Перейти к содержанию
Официальный форум поддержки Simpla

Переводим генератор URL для категорий в ручной режим


Рекомендуемые сообщения

Приветствую всех.
Столкнулся мой клиент с такой ситуацией.
Был у него сайт, который был проиндексирован и по некоторым запросам был в ТОПе... И вот обратился он ко мне с доработкой функционала и обновлением дизайна. После чего он решил, пере структурировать иерархию категорий на сайте. Ему так же было не приятен тот факт, что переименовка категорий сопровождалась перегенерацией УРЛов
 
Сделал ему такое простенькое решение, может кому пригодится.

Все в одном файле  /simpla/design/htm/product.tpl


1 Добавляем кнопочку генерировать

<li><label class=property>Адрес</label><div class="page_url">/catalog/</div><input name="url" class="page_url" type="text" value="{$category->url|escape}" /></li>

заменяем на 

<li><label class=property>Адрес <a href="#" id="genrate">генерировать</a></label><div class="page_url">/catalog/</div><input name="url" class="page_url" type="text" value="{$category->url|escape}" /></li>

2 Добавляем функцию при клике на ту самую кнопочку

$('input[name="url"]').change(function() { url_touched = true; });
$('input[name="name"]').keyup(function() { set_meta(); });

добавляем что бы получилось так:

$('input[name="url"]').change(function() { url_touched = true; });
$('input[name="name"]').keyup(function() { set_meta(); });
$('#genrate').click(function(){$('input[name="url"]').val(generate_url())});

3 Отключаем автогенератор для нашего поля

function set_meta()
{
	if(!meta_title_touched)
		$('input[name="meta_title"]').val(generate_meta_title());
	if(!meta_keywords_touched)
		$('input[name="meta_keywords"]').val(generate_meta_keywords());
	if(!meta_description_touched)
		$('textarea[name="meta_description"]').val(generate_meta_description());
	if(!url_touched) 
		$('input[name="url"]').val(generate_url());
}

заменяем

function set_meta()
{
	if(!meta_title_touched)
		$('input[name="meta_title"]').val(generate_meta_title());
	if(!meta_keywords_touched)
		$('input[name="meta_keywords"]').val(generate_meta_keywords());
	if(!meta_description_touched)
		$('textarea[name="meta_description"]').val(generate_meta_description());
	//if(!url_touched) 
	//	$('input[name="url"]').val(generate_url());
}
Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
×
×
  • Создать...