Коллеги, приветствую! Есть пара вопросов, в которых я не смог разобраться. Буду рад помощи.
- Как сделать логотип на главной просто картинкой без ссылки, а на всех других страницах логотип должен быть ссылкой на главную?
- Как сделать неактивной ссылку в меню при нахождении внутри категории?
- Как закрыть в noindex и nofollow кнопку "Читать далее"?
- Как закрыть от индексации меню везде, кроме главной страницы?
- Как закрыть от индексации картинку поста, стоящую в "превью" поста (на странице рубрики, с кнопкой "читать далее"). Или это заморочка и проще сделать миниатюру и закрыть ее от индексации? Тогда как закрыть миниатюру? :)
- Как в стандартных комментариях оставить обязательными только поля "имя" и "комментарий", а остальные поля убрать совсем?
Просто пытаюсь избавиться от циклических и дублированных ссылок.
Если что, пилю стандартный шаблон twentyten. Люблю нерезиновый минимализм:) Логотипчик уже есть, большего от дизайна мне не нужно.
- 18.01.2013 11:23
- 18.01.2013 11:53
По 6 пункту ответ есть тут
Wordpress: плюшки файла functions.phpСпасибо сказали:
hronny(18.01.2013), - 18.01.2013 12:29Дипломник

- Регистрация: 26.12.2011
- Сообщений: 148
- Репутация: 17
1. Где именно это находится в вордпрессе, я, к сожалению, не знаю, но на битриксе и в Joomla в шаблоне пиcал проверку на PHP. if ($_SERVER["REQUSET_URI"])!="/" { }. Если url страницы не равен "/", то дорисовываешь тег <a>. Вот вообщем-то и все.
4. Аналогично, только надо найти, где меню выводится )
Чем смог )Спасибо сказали:
hronny(18.01.2013), - 18.01.2013 12:38
xclsv, а поподробнее можно? Я ниразу не программист:)
Имею в виду полный код цикла. Куда вставить - разберусь. а что вставить - пока не понимаю...
m@rs, немного не то. Точнее немного не хватает. Поле "Сайт" убрал, а поле "e-mail" убрать конечно можно, но в любом случае выскакивает ошибка "для отправки комментария введите обязательные поля (имя и e-mail)". Вот мне нужно убрать проверку e-mail.
Отвечаю сам на третий вопрос:)
Для закрытия от индексации кнопки "Читать далее" Необходимо в папке wp-includes в файле post-template.php Найти следующую строку:
PHP код:И заменить на следующее (дописать где надо noindex&nofollow):$output .= apply_filters( 'the_content_more_link', ' <a href="' . get_permalink() . "#more-{$post->ID}\" class=\"more-link\">$more_link_text</a>", $more_link_text );
PHP код:$output .= apply_filters( 'the_content_more_link', ' <!--noindex--><a rel="nofollow" href="' . get_permalink() . "#more-{$post->ID}\" class=\"more-link\">$more_link_text</a><!--/noindex-->", $more_link_text );
Последний раз редактировалось hronny; 18.01.2013 в 12:54.
- 18.01.2013 12:49Дипломник

- Регистрация: 26.12.2011
- Сообщений: 148
- Репутация: 17
hronny, ну я вообщем-то тебе все и написал ))
Опишу более плотно: находишь место, которое выводит тот блок или div, что тебе нужно ограничить. Дописываешь PHP код таким образом:
<?php if ($_SERVER['REQUEST_URI']!='/'):?>
<a href="http://google.com"><img src="image.jpg"/></a>
<?php else: ?>
<img src="image.jpg"/>
<?php endif;?>Спасибо сказали:
hronny(18.01.2013), - 18.01.2013 13:04
xclsv, а можете переписать код под следующие условия?
1. На главной - картинка.
2. на site.ru/category - ссылка c noindex&nofollow
3. на site.ru/statya.html - ссылка с noindex&nofollow
Принцип понятен, но вот внедрить никак не могу... Деревце я:) - 18.01.2013 13:27Дипломник

- Регистрация: 26.12.2011
- Сообщений: 148
- Репутация: 17
<?php if ($_SERVER['REQUEST_URI']='/site.ru/category' || $_SERVER['REQUEST_URI']='/site.ru/statya.html'):?>
<noidex><a href="http://google.com" rel="nofollow"><img src="image.jpg"/></a></noidex>
<?php else: ?>
<img src="image.jpg"/>
<?php endif;?>
---------- Сообщение добавлено 08:27 ---------- Предыдущее 08:17 ----------
Если условий будет больше, то проще через foreach :
<? switch ($_SERVER['REQUEST_URI']) :
case "/site.ru/category": ?>
<noidex><a href="http://google.com" rel="nofollow"><img src="image.jpg"/></a></noidex>
<? break;
case "/site.ru/statya.html": ?>
<noidex><a href="http://google.com" rel="nofollow"><img src="image.jpg"/></a></noidex>
<? break;
case "/": ?>
<img src="image.jpg"/>
<? break;
default:
break;
endswitch; ?>Спасибо сказали:
hronny(18.01.2013), - 18.01.2013 13:47
xclsv, спасибо, с этим разобрался.
Уточнение ко 2 вопросу. Сейчас в меню стоят ссылки на категории. При переходе в категорию ссылка в меню на эту категорию остается. Получается циклическая ссылка. Как эт этого избавиться? (Например, при нахождении в категории ссылку в меню делать обычным текстом). - 28.01.2013 16:18Новичок

- Регистрация: 28.01.2013
- Сообщений: 2
- Репутация: 2
hronny, 1.Рассмотрим, два варианта на движке wordpress. - когда код отвечающий за вывод заголовка находится в header.php в файле header.php ищем следующий код:
PHP код:и меняем его на это:<div id="header"> <div id="logo"> <h1><a href="<?php bloginfo('url'); ?>"><?php bloginfo('name'); ?></a></h1> <?php if($option["amp_description"] == "1"){ ?><div class="desc"><?php bloginfo('description')?></div><?php } else { ?><?php } ?></div> </div>PHP код:- когда код отвечающий за вывод заголовка находится в functions.php ищем следующий код:<div id="header"> <div id="logo"> <?php $ref=$_SERVER['REQUEST_URI']; if(($ref != '')&&($ref != '/')) { ?> <h1><a href="<?php bloginfo('url'); ?>"><?php bloginfo('name'); ?></a></h1> <?php } else { ?> <h1><a><?php bloginfo('name'); ?></a></h1> <?php } ?> <?php if($option["amp_description"] == "1"){ ?><div class="desc"><?php bloginfo('description')?></div><?php } else { ?><?php } ?></div> </div>PHP код:и меняем его на это:$output .= '<'.$header_element.' id="site-name"><a href="'.home_url( '/' ).'" title="'. esc_attr( get_bloginfo( 'name', 'display' ) ).'" rel="home">'.get_bloginfo( 'name' ).'</a></'.$header_element.'>';
PHP код:Чтобы было проще помогать, скажите название вашего шаблона, если конечно он стандартный, чтобы можно было видеть код. 2. По второму пункту также нужно прописывать условие как и в первом пункте. 3. Также рассматриваем вариант на движке вордпресс: за "читать далее" отвечает файл лежащий по адрессу site.ru\wp-includes\post-template.php ищем там строчку:$ref=$_SERVER['REQUEST_URI']; if(($ref != '')&&($ref != '/')){$output .= '<'.$header_element.' id="site-name"><a href="'.home_url( '/' ).'" title="'. esc_attr( get_bloginfo( 'name', 'display' ) ).'" rel="nofollow">'.get_bloginfo( 'name' ).'</a></'.$header_element.'>'; }else{$output .= '<'.$header_element.' id="site-name"><a>'.get_bloginfo( 'name' ).'</a></'.$header_element.'>'; }
PHP код:меняем на:$output .= apply_filters( 'the_content_more_link', ' <a href="' . get_permalink() . "#more-{$post->ID}\" class=\"more-link\">$more_link_text</a>", $more_link_text );
PHP код:4. могу сказать как все меню закрыть на всех страница, и рассказать про костыль, который открывает для индексации только карту сайта. 5.Для этого нужно видеть ваш код. Но скорее всего Вам нужно править файл Loop.php$output .= apply_filters( 'the_content_more_link', ' <noindex><a rel="nofollow" href="' . get_permalink() . "#more-{$post->ID}\" class=\"more-link\">$more_link_text</a></noindex>", $more_link_text );
Спасибо сказали:
hronny(28.01.2013), - 28.01.2013 16:30
feniksdv, пилю стандартный twentyten.
Спасибо за развернутый ответ. Сейчас буду пробовать.
Как закрыть меню на всех страницах сайта?
С комментариями проблемка. Есть стандартна функция, запрашивающая из БД связку логин-мыло. Так вот, я не представляю, как сделать так, что-бы запрашивался только логин. А убрать поля из формы - дело секундное.
Тэги топика:
Похожие темы
| Темы | Раздел | Ответов | Последний пост |
|---|---|---|---|
Миграция шаблона | Joomla | 0 | 14.06.2012 13:37 |
Правка шаблона | Joomla | 6 | 06.06.2012 01:36 |
Перевод шаблона | WordPress | 4 | 22.04.2012 01:11 |
По поводу шаблона на WP | Web дизайн | 4 | 18.03.2012 01:55 |
Макет шаблона | Web программирование | 4 | 23.10.2011 01:47 |




