Как убрать нули в дате ссылок (ЧПУ Wordpress)

S
На сайте с 29.10.2012
Offline
86
991

Здравствуйте!

Возникла необходимость заменить часть урл вида .../2015/02/01/... на .../2015/2/1/...

Это дата статьи, которая вставляется в урл страницы на Wordpress автоматом при включении ЧПУ такого вида - /%year%/%monthnum%/%day%/%postname%.html

Т.е. нужно убрать нули в числах месяцев и дней.

Подскажите пожалуйста, как можно это реализовать?

Лучший новый хостинг, VPS, Dedic (http://goo.gl/6bZzjY) - качество, скорость, стабильность, выбор локации... сервера для MFA и Буржнета (http://goo.gl/6bZzjY)
bupy7
На сайте с 18.03.2014
Offline
30
#1

А зачем такое нужно, можно вопрос?

S
На сайте с 29.10.2012
Offline
86
#2
bupy7:
А зачем такое нужно, можно вопрос?

Для восстановления статьи и её урла, которая сейчас в индексе поисковиков и имеет определенный траст.

Вся проблема в том, что ранее она имела такой урл (без нулей) потому, что размещена была на другой цмс, а сейчас нужно её восстановить именно на вордпресс, но как оказалось это не так просто.

Я как бы казалось нашла решение задачи в файле link-template.php, где нужно изменить zeroise с 2 на 1, но что то оно не работает, что то я там изменяю не так.

Кто разбирается в этом, посмотрите пожалуйста файл link-template.php, который в папке wp-includes, строки 360-404.

SeVlad
На сайте с 03.11.2008
Offline
1609
#3
seotanya:
Я как бы казалось нашла решение задачи в файле link-template.php,

угу. До ближайшего обновления.

http://codex.wordpress.org/%D0%A7%D0%90%D0%92%D0%9E/%D0%98%D0%B7%D0%BC%D0%B5%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5_%D1%81%D1%82%D0%B0%D0%BD%D0%B4%D0%B0%D1%80%D1%82%D0%BD%D1%8B%D1%85_%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D0%B9

seotanya:
Т.е. нужно убрать нули в числах месяцев и дней.

301 в хтацесс будет правильнее.

Делаю хорошие сайты хорошим людям. Предпочтение коммерческим направлениям. Связь со мной через http://wp.me/P3YHjQ-3.
S
На сайте с 29.10.2012
Offline
86
#4

301 в штаццесс не вариант так, как в поисковиках и на самом сайте будут ссылки с нулями, а нужно что бы были без них.

Мне все же кажется, что это можно сделать с zeroise в файле link-template.php, но как именно не могу понять.

SeVlad
На сайте с 03.11.2008
Offline
1609
#5
seotanya:
301 в штаццесс не вариант так, как в поисковиках и на самом сайте будут ссылки с нулями, а нужно что бы были без них.

ПС переиндексируют на нормальные.

seotanya:
Мне все же кажется, что это можно сделать с zeroise в файле link-template.php, но как именно не могу понять.

Наверняка можно. Но категорически ненужно менять файлы ядра. Выше ссылку я не просто так дал.

S
На сайте с 29.10.2012
Offline
86
#6

Можно в принципе попробовать. А что именно нужно для этого прописать в штаццесс, не подскажите? А то я не особо сильна в этом :)

Lord_Leon
На сайте с 04.03.2010
Offline
63
#7

seotanya, добрый день.

Попробуйте в файле link-template.php где функции get_month_link($year, $month) и get_day_link($year, $month, $day) поменять m на n. И день тоже должен быть c параметром j. Смысл поменять стандартные параметры даты в этом файле. Более подробнее см. здесь (в конце статьи). Но, наверняка, такую функцию можно и в файле functions.php сделать.

А нет сорри вообще все просто, строка $date = explode(" ",date('Y m d H i s', $unixtime)); поменять на $date = explode(" ",date('Y n j H i s', $unixtime));

Но помните, что после каждого обновления системы данный файл перезаписывается заново!

Промышленный дизайн (https://aicogroup.ru/portfolio/industrial-design) корпуса для рэа | Крипозащита данных, создание сайтов (https://aicogroup.ru/portfolio/sozdanie-saytov).
S
На сайте с 29.10.2012
Offline
86
#8
Lord_Leon:
seotanya, добрый день.
Попробуйте в файле link-template.php где функции get_month_link($year, $month) и get_day_link($year, $month, $day) поменять m на n. И день тоже должен быть c параметром j. Смысл поменять стандартные параметры даты в этом файле. Более подробнее см. здесь (в конце статьи). Но, наверняка, такую функцию можно и в файле functions.php сделать.
А нет сорри вообще все просто, строка $date = explode(" ",date('Y m d H i s', $unixtime)); поменять на $date = explode(" ",date('Y n j H i s', $unixtime));
Но помните, что после каждого обновления системы данный файл перезаписывается заново!

Добрый день! Огромное Вам спасибо! Действительно, замена строки $date = explode(" ",date('Y m d H i s', $unixtime)); на $date = explode(" ",date('Y n j H i s', $unixtime)); работает.

Это именно то, что мне и нужно было.

Ещё раз, спасибо!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий