Изменить структуру постоянного значения на последовательное число для каждого поста?
-
16-10-2019 - |
Вопрос
Я только что создал черновик в своем блоге, и его идентификатор сообщения - 1. После создания еще одного черновика, идентификатор сообщения для этого последнего поста 3! Я надеялся увидеть их в последовательном порядке, поэтому в будущем у меня будет хорошая автоматическая нумерация, как
../archives/1
../archives/2
Несколько месяцев спустя ...
../archives/154
../archives/155
У меня нет проблем с погружением в код, но мне было интересно, узнает ли кто -нибудь простое решение для достижения этого.
Спасибо.
Решение
Идентификатор поста не предназначен для того, чтобы быть номером последовательности в том смысле, что для поставки N Следующий пост составляет n+1. Идентификатор является автоматическим полем в таблице сообщений, которое включает в себя много вещей, которые не являются опубликованными сообщениями, например, черновиками, страницами, вложениями. Таким образом, на самом деле нет способа заставить WordPress назначать последовательные идентификаторы в этом поле.
Существуют способы создать номер последовательности, а затем использовать его в структуре постоянной ссылки, но любая эффективная система будет включать хранение идентификаторов в отдельном месте (таблица или опция) и написание пользовательского плагина переписать. Этот последний бит довольно продвинутый.
Для опытного хакера было бы интригующей проблемой создать плагин, который решает эту проблему без значительного снижения производительности.
Другие советы
Страницы и посты делятся удостоверением личности, поэтому я сомневаюсь, что это сработает
Кроме того - лучшая структура постоянной ссылки для SEO - включить тампот -имя там
Как объяснили другие, идентификатор POST является автоматическим полем в базе данных, и поэтому не является иным образом контролируемым. Вы, очевидно, не хотите использовать это в своей постоянной ссылке.
Плагины и пользовательские поля являются вариантом, но не рекомендуются, потому что любой «обнаженный» номер имеет возможность быть неверно истолкованным WordPress в качестве идентификатора поста или другого внутреннего номера, такого как год или дата.
Более простое решение, которое не требует пользовательских полей или плагинов, состоит в том, чтобы редактировать пост -слизняк для каждого поста и дать ему последовательное число, которым предшествует постоянный алфавитный префикс.
Например, вместо:
../archives/1
../archives/2
...
../archives/x
использовать:
../archives/p1
../archives/p2
...
../archives/px
Изменение своей постоянной структуры, вы можете даже сократить это на:
../p1
../p2
...
../px
Вы можете заменить «P» на все, что вы хотите, например, «Day1» или «Deep-Thating-1».