Вопрос Как изменить ссылки (адрес) страниц, есть где-то настройки в админке?

tp-20

Создатель
Регистрация
23 Июл 2020
Сообщения
39
Реакции
2
Добрый вечер всем.
Вопрос - можно ли как-то изменить ссылку? есть где-то настройки в админке?
Сейчас ссылка выглядит так: Для просмотра ссылки Войди или Зарегистрируйся
1. во-первых, нужно изменить кириллицу на латиницу.
2. во-вторых, нужно убрать или переместить вперёд нумерацию объявления - в данном случае 14.
3. в ссылку добавить город или регион

В итоге ссылка должна иметь примерно такой вид: Для просмотра ссылки Войди или Зарегистрируйся



Ссылка выводится в файле resources/views/home/inc/latest.blade.php на строке 111
<a href="{{ \App\Helpers\UrlGen::post($post) }}">{{ \Illuminate\Support\Str::limit($post->title, 70) }} </a>

Здесь функция post, которая расписана в файле app/Helpers/UrlGen.php
с 69 по 89 строку:
public static function post($entry, $locale = null)
{
if (empty($locale)) {
$locale = config('app.locale');
}

if (is_array($entry)) {
$entry = ArrayHelper::toObject($entry);
}

$path = self: PostPath($entry, $locale);

if (isset($entry->id) && isset($entry->title)) {
$attr = ['slug' => slugify($entry->title), 'id' => $entry->id];
$url = lurl($path, $attr, $locale);
} else {
$url = '#';
}

return $url;
}


upload_2020-11-18_22-51-13.png
 
Последнее редактирование:
Вопрос - можно ли как-то изменить ссылку?
Я не знаю точно, уже многие боролись с этими ссылками вроде бы не кто не парабол.Так на русском и остаются.
Мен- если не трудно можешь скинуть свою папку-языка с переводом и на сайт и админку?
 
Вопрос - можно ли как-то изменить ссылку?
1. во-первых, нужно изменить кириллицу на латиницу.
пока ответ не нашёл, но есть один нюанс. возможно кого-то натолкну на мысль ...

1. файл app/Helpers/UrlGen.php - генерирует УРЛы.
2. С 69-й строки начинается функция post

public static function post($entry, $locale = null)
{
if (empty($locale)) {
$locale = config('app.locale');
}

3. Здесь есть переменная локаль. $locale
4. думаю, что эту локаль можно принудительно выставить в en, тогда и ссылки будут на инглише/

Встречается такой вариант - config(('app.locale') : 'en') , но он выдаёт ошибку.
$locale = config('app.locale') == 'en'; - ошибку не выдаёт, но на инглиш ссылки не переводит.
Сейчас изменения не происходят, наверное из-за того, что в БД ссылки уже так сохранены (с кириллицей).


Если у кого-нибудь есть идеи, как это сделать, пишите..

UPD. Промежуточный вывод: "из коробки" сделать ссылки постов на транслите не получится, т.к. в БД не хранятся названия постов на транслите - только в оригинале, как вы писали изначально. Это только допиливать надо. Пока так..
upload_2020-11-24_0-26-52.png
_____________________________________________________

Потом, ещё момент.
При наведении на город в ссылке вылазит ненужная хрень - free-ads.
Пока не понятно, как это безболезненно убрать.
Есть файл
config/larapen/routes.php (со строки 106)
// Search by Location
$routesTab['search-city'] = 'free-ads/{city}/{id}';
$routesTab['t-search-city'] = 'free-ads';
$routesTab['v-search-city'] = 'free-ads/:city/:id';


И файл
resources/lang/ru/routes.php (со строки 25)
'search-city' => 'free-ads/{city}/{id}',
't-search-city' => 'free-ads',
'v-search-city' => 'free-ads/:city/:id',


Если убрать free-ads, то при переходе на страницу с городом получаем ошибку 404 - не существующая страница. Больше free-ads нигде не встречается.

В этих же файлах правятся ссылки на категории (убираем слово category из ссылки)
_________________________________________________

upload_2020-11-24_0-1-18.png
Добился, чтобы в ссылке появилось название города на инглише (транслит)
В файле
app/Helpers/UrlGen.php переходим к функции city (строка 190) и смотрим строки, где есть код 'city' => slugify($entry->name), (строки 214, 219 и 232 - всего 3 раза), меняем name на asciiname. Готово. Города перевели!

UPD 17.12.2020. Для версии 7.3.3: Править нужно на строке 167:
$uri = $countryCodePath . config('routes.location') . '/' . slugify($entry->asciiname)
upload_2020-12-17_11-23-50.png

Значения asciiname берутся из БД из таблицы lara_cities:
upload_2020-11-24_9-22-39.png

.
UPD 17.12.2020. Для версии 7.3.3: изменение ссылки для городов.
Сейчас ссылка на город выглядит таким образом: Для просмотра ссылки Войди или Зарегистрируйсяlocation/bahchisaray/2014131
Нужно привести к такому виду: Для просмотра ссылки Войди или Зарегистрируйсяbahchisaray

Пока не разобрался, как изменить, но ковырять надо здесь (и ниже второй файл) -
routes/web.php

upload_2020-12-17_13-16-25.png


и здесь:
app/Helpers/UrlGen.php

upload_2020-12-17_13-19-36.png
 
Последнее редактирование:
Назад
Сверху