- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
demon2005,
Или каким иным методом это можно сделать, кроме как составить карту вручную и каждый раз при добавлении нового материала её редактировать?
Приведу пример без использования плагинов.
1. Создаем новое поле на странице редактирования записи. Для этого добавим следующий код в файл functions.php, который находится в папке темы:
add_action('add_meta_boxes', 'custom_box');
function custom_box(){
add_meta_box('alt-title','Альтернативное название записи','display_my_box','post','normal');
}
function display_my_box ($post) {
$atitle = get_post_meta($post->ID, 'atitle_id', true);
wp_nonce_field('nonce_id', 'nonce_name');
?>
<div>
<label for="atitle_id">Альтернативное название записи:</label>
<input class="widefat" type="text" name="atitle_id" size="30" id="atitle_id" value="<?php echo $atitle; ?>" spellcheck="true" />
</div>
<?php
}
add_action('save_post', 'save_func');
function save_func($post_id) {
if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return;
if (!isset($_POST['nonce_name']) || !wp_verify_nonce($_POST['nonce_name'], 'nonce_id')) return;
if (isset($_POST['atitle_id']) && $_POST['atitle_id'] != ''){
update_post_meta($post_id, 'atitle_id', esc_html($_POST['atitle_id']));
}
}
После этого на странице редактирования записи появится новое поле с названием "Альтернативное название записи". Сохраните в это поле альтернативное название
2. Создаем новый файл с названием page-sitemap.php и сохраняем в папку темы (в то же место, где functions.php).
3. Вставим следующий код в файл page-sitemap.php
<?php
/*
Template Name: Sitemap
*/
?>
<?php get_header(); ?>
<?php
$posts = get_posts( array(
'numberposts' => -1,
'orderby' => 'date',
'order' => 'DESC',
'post_type' => array('post')
) );
?>
<h1>Статьи</h1>
<ul>
<?php foreach ( $posts as $post ): setup_postdata($post);
$atitle = get_post_meta($post->ID, 'atitle_id', true);
?>
<li><a href="<?php the_permalink(); ?>"><?php if ( $atitle ) echo("$atitle"); else the_title(); ?></a></li>
<?php endforeach; wp_reset_postdata(); ?>
<?php get_footer(); ?>
</ul>
Этот код генерирует список ссылок с альтернативными заголовками всех записей. При отсутствии альтернативного заголовка выводится настоящий заголовок записи.
4. Создаем новую страницу "Карта сайта" (Админ-панель -> Страницы -> Добавить новую). В блоке "Атрибуты страницы" выберем шаблон "sitemap"
Страница может отображаться криво из-за отсутствия некоторых html блоков, которых вы можете найти в файле index.php
okwell, Примитивненько но сгодиться. Надо еще и страницы добавить, чтоб полная карта вышла.
Примитивненько но сгодиться. Надо
Норм. Ты строг сегодня ;)
тег ul нужно было закрыть сразу после цикла, видимо поспешил. Правильно будет так:
Надо еще и страницы добавить, чтоб полная карта вышла.
Да, еще можно добавить рубрики, метки и другие таксономии, при их наличии:
Код выводит список записей с альтернативными заголовками, страниц, за исключением текущей страницы, рубрик и меток.
Вечер добрый, господа.
Так и не нашел решения со своим вопросом - вывод информации из дополнительного поля в метках (tag.php)
Сделал дополнительные поля для категорий и меток - расширенное описание, через плагин ACF.
В категориях реализовал вывод следующим кодом
<?php $term_id = get_query_var('cat');
echo the_field('dop_opisanie', 'category_'.$term_id); ?>
Подскажите код для меток - мозгов не хватает самому написать.
okwell, Вы и так дали пример хорошего кода,пусть бы вопрошающий попытался разобраться и сам дописл недостающее.
ну и делать карту сайта для рубрик, меток,имхо, не нужно и не совсем правильно с точки зрения SEO.
Может кто поможет, в гугле ничего не нарыл.
Есть два разных домена, у обоих доменов WP парсит один и тот же контент и создает одни и те же permalinks, т.е.
domain1.com/nazvanie-posta-nomer-1
и
domain2.com/nazvanie-posta-nomer-1
Нужно:
Внутри поста domain1.com поставить линк на эту же статью у domain2.com
Т.е. чтоб с domain1.com/nazvanie-posta-nomer-1 был линк на domain2.com/nazvanie-posta-nomer-1
Вопрос как это организовать. Благодарю заранее
Локации: Россия, США, Англия, Германия, Франция, Нидерланды, Украина, Сингапур, Австралия, Япония, Австрия (https://www.adelinahost.com/ru)
demon2005, Sly32, okwell, Nomiki, дабы не флудить тут приглашаю: /ru/forum/947337 ;) (Другие тоже - велком)
Нужно:
Внутри поста domain1.com поставить линк на эту же статью у domain2.com
Т.е. чтоб с domain1.com/nazvanie-posta-nomer-1 был линк на domain2.com/nazvanie-posta-nomer-1
Хм. Логика может быть такова: Парсер есть. Парсить сначала на domain2.com, на него повешать скрипт или плагин, автоматически проставляющий ссылку в посте на себя же. А с него парсить на domain1.com, где сразу с постом уже будет стоять линк на "первоисточник - domain2.com" (клон поста с него по-сути).
Скрипт типа такого.
Автоссылки типа такого (не весь урл), аналогичное что-то надо. Или проще, через функцию:
Постоянная ссылка на пост:
Либо спарсить, затем добавить в текстките через регулярки (омг!) ссылки, и раскидать опять по нужным сайтам. Но это уже ручной труд.
Хм. Логика может быть такова: Парсер есть. Парсить сначала на domain2.com, на него повешать скрипт или плагин, автоматически проставляющий ссылку в посте на себя же. А с него парсить на domain1.com, где сразу с постом уже будет стоять линк на "первоисточник - domain2.com" (клон поста с него по-сути).
Скрипт типа такого.
Автоссылки типа такого (не весь урл), аналогичное что-то надо. Или проще, через функцию:
Постоянная ссылка на пост:
Либо спарсить, затем добавить в текстките через регулярки (омг!) ссылки, и раскидать опять по нужным сайтам. Но это уже ручной труд.
Не знаю насколько правильно будет парсить domain1 с domain2 или наоборот. Хотелось бы парсить оба сайта с перво источника.
Вот если бы в single.php работал бы тег /%postname%/, то тогда можно было бы внутри domain1.com поставить линк типа <a href="domain2.com/%postname/"> и результат был бы нужный, но такой тег не работает