Попалася мені якось тема, що популярний плагін WordPress wp-pagenavi навантажує сервер не в міру своєї потреби. Проаналізувавши його код з'ясував, що це всього лише міф, хоча його все ж можна трохи оптимізувати, власне цього і присвячений пост.
Якщо інші плагіни складно уявити без можливості їх налаштування в адмін-панелі, то wp-pagenavi мені представляється легко. Досить один раз налаштувати навігацію і забути про неї. І напевно є ті, хто думає так само? Тому я вирішив відмовитися від wp-pagenavi і замінити його на свою функцію. Функцію я написав, попередньо вивчивши код wp-pagenavi, частково код був узятий від туди. Всі CSS класи wp-pagenavi збережені і, як наслідок, замінити wp-pagenavi на мій варіант зовсім не важко.
Для заміни потрібно скопіювати нижченаведену функцію в файл шаблону functions.php. Також, потрібно скопіювати CSS стилі wp-pagenavi в ваш файл стилів (зазвичай це style.css). Перенесення стилів носить і корисний характер, тому що більше не буде необхідності підключати файл стилів, а це мінус один http запит.
Налаштування описані прямо в коді і вони ідентичні налаштувань wp-pagenavi, з тією лише різницею, що замість тексту "до останньої сторінки" можна вивести номер останньої сторінки.
Після того, як функція встановлена і css стилі перенесені, міняємо в шаблоні код wp_pagenavi на цей:
Якщо у вас в коді щось на зразок цього, то потрібно поміняти все wp_pagenavi на kama_pagenavi:
CSS стилі для коду
Вище я вже сказав. що класи CSS збігаються з wp-pagenavi. Для зручності викладаю тут все CSS правила:
У моєму коді присутні 4 нових класи: first (до початку), last (до кінця), prev (назад), next (вперед).
Непогану добірку стилів можна взяти тут.
Якщо навігація виводиться 2 рази
Так само, хочу звернути увагу тих, у кого навігація виводиться 2 рази на сторінці (зверху і знизу циклу). Щоб 2 рази не виконувати одні й ті ж операції по складанню навігації, логічніше зробити так: один раз зібрати навігацію (використовувати функцію), потім записати результат в змінну і вдруге просто вивести цю змінну. Виглядає це так:
оновлення
Останній варіант функції нагорі.
1. 2 3 4 5 6 7 8 50 або 1. 21 22 23 24 25 26 27 28. 29
Тобто, де не потрібно прибрані тексти "до" і "після" навігації (в даному прикладі це три крапки).
Реверсивна пагінація для WordPress
Ідея реверсивної (зворотної) пагінацію належить sholo. який висловив її на відомому нам форумі - mywordpress.ru. Мені стало цікаво подивитися, як це буде виглядати і я трохи переробив код.
Цей код заснований на старій версії основного коду.
❮ Плагін Kama Quicktags: код на сторінках вашого сайту. Як я вирішив цю проблему
Корисний хак для WordPress, якщо сайт допрацьовується на локалке ❯
Привіт, хто може допомогти, проблема в пагінацію, page / 1 /. page / 2 / і т.д.
яку б цифри в кінці не поставиш все рівно відкривається сторінка, в чому може бути проблема?