Помощник
|
Вывод дополнительных полей через условие (Wordpress) |
LEXENUS
|
Сообщение
#1
|
||
|
|
||
|
|||
Alex_RD |
14.6.2013, 10:29;
Ответить: Alex_RD
Сообщение
#2
|
|
Развернуть/Свернуть
<?php if(is_page($id)) { <center><?php echo (get_post_meta($post->ID, 'menu', true));?></center> } else { //вывод дефолтного меню } ?> где $id - id нужной страницы (именно страницы, не записи, не рубрики) update: Гм, поправка так правильней будет: <?php $additional_menu = get_post_meta($post->ID, 'menu', true);?>
<?php if($additional_menu) { <center><?php echo $additional_menu;?></center> } else { //вывод дефолтного меню } ?> Сообщение отредактировал Alex_RD - 14.6.2013, 10:36 -------------------- |
|
|
NoMax |
14.6.2013, 10:43;
Ответить: NoMax
Сообщение
#3
|
|
Тогда уж так правильно будет:
<?
if (get_post_meta($post->ID, 'menu', true)) { echo '<center>'.get_post_meta($post->ID, 'menu', true).'</center>'; } else { //вывод дефолтного меню } ?> -------------------- |
|
|
LEXENUS
|
Сообщение
#4
|
|
После вставки кода перестаёт отображаться главная.
И вопрос какой синтаксис верен для wp. Представленый выше или такой. <?php $additional_menu = get_post_meta($post->ID, 'menu', true);?> <?php if($additional_menu)?> <center><?php echo $additional_menu;?></center> <?php endwhile; else: ?> дефолтное меню <?php endif; ?> Но в любом случае и первый и второй вариант блокируют вывод главной страницы. NoMax, благодарю помогло Alex_RD, также спасибо. |
|
|
Alex_RD |
14.6.2013, 10:55;
Ответить: Alex_RD
Сообщение
#5
|
|
NoMax,
Тогда уж так правильно будет: Не знаю почему, не люблю wp-шные функции напрямую условия вставлять <? if (get_post_meta($post->ID, 'menu', true)) { echo '<center>'.get_post_meta($post->ID, 'menu', true).'</center>'; } else { //вывод дефолтного меню } ?> получается делаем 2 запроса вместо одного. Хотя вы правы, не обратил внимания, что html теги внутри php. LEXENUS, И вопрос какой синтаксис верен для wp. Представленый выше или такой. оба, лично для меня условие{цикл} удобнее на маленьких (по строкам) выводах и в отдельно выносимых в functions.php, а if(): endif; на длинных (там где идет цикл вывода контента, с большим количеством .html тегов) Сообщение отредактировал Alex_RD - 14.6.2013, 10:56 -------------------- Wordpress, HostCMS, DataLife engine, Shop-Script... Портфолио (beta) |
|
|
LEXENUS
|
Сообщение
#6
|
|
Добрый вечер. Не хотелось поднимать новую тему по данному вопросу, решил апнуть старую.
Та же ситуация, но нужно производить проверку url страницы на содержание определённого адрса. <? if (проверка на содержание в адресе последовательно идущих символов /en/) { echo '<center>'.get_post_meta($post->ID, 'menu', true).'</center>'; } else { echo '<center>'.get_post_meta($post->ID, 'menu2', true).'</center>'; } ?> То есть, если страница сайта англоязычная выводится дополнительное поле "menu", если нет "menu2". |
|
|
andreykashops |
12.7.2013, 22:37;
Ответить: andreykashops
Сообщение
#7
|
|
LEXENUS, думаю ссылка Вам в помощь будет:
http://ixmaster.net/pokazat-blok-na-oprede...stranicax-sajta -------------------- |
|
|
LEXENUS
|
Сообщение
#8
|
|
andreykashops, спасибо.
Но по работе функции сразу возник вопрос. $url = strpos($_SERVER['REQUEST_URI'], "single") Я так понимаю, что берётся текущий url страницы, сравнивается с параметром single и возвращает true или false . Single должен содержать именно полный url или часть адреса страницы. То есть в данном случае мне нужно создать отдельную переменную и в условие сравнить значение переменной? $add= strpos($_SERVER['REQUEST_URI'], "single"); <? if (add == true) { /// } ?> Поправьте меня, если я в чём-то не прав. Добавлено Написал следующий код: <?php $curre = en]; $url = strpos($_SERVER['REQUEST_URI'], $curre); if ($url === true) { echo '<center>'.get_post_meta($post->ID, 'menu', true).'</center>'; } else { echo '<center>'.get_post_meta($post->ID, 'menuen', true).'</center>'; } ?> К примеру у нас страница: name.ru/en/jejejej.html 'REQUEST_URI' передаёт jejejej.html 'SERVER_NAME' передаёт name.ru как получить en? Проблема рещилась. 'REQUEST_URI' не передавал /en/ изза того что плагин эмулировал директорию. А саму проблему решил путём использования переменной плагина. Всем спасибо. Сообщение отредактировал LEXENUS - 12.7.2013, 23:54 |
|
|
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Продам базу сайтов Wordpress в 16 миллионов доменов! Свежая сборка. | 19 | Boymaster | 11420 | 20.4.2024, 0:01 автор: Boymaster |
|
Bropush - Твой бро в монетизации через Push-уведомления | 30 | bropush | 11864 | 16.4.2024, 18:19 автор: bropush |
|
Нужен кодер, чтобы пофиксить ошибку Wordpress после переноса сайта | 0 | Alex-777 | 952 | 7.4.2024, 18:05 автор: Alex-777 |
|
Через какой браузер и как можно найти в кэшэ браузера видео | 10 | Room | 2389 | 23.3.2024, 7:41 автор: Room |
|
Перенос сайта на CMS Wordpress | 8 | freeax | 4983 | 10.3.2024, 14:58 автор: freeax |
Текстовая версия | Сейчас: 25.4.2024, 10:28 |