Поддомены+шорткоды для каждого города в title

S
На сайте с 24.02.2011
Offline
91
683

Добрый день.

Хочу на WP

— Настроить поддомены под крупные города. - тут все понятно.
— На поддоменах, установить шорткоды (или как то по другому) городов в title, description, в контент сайта шапку, подвал, h1 и т.д. чтобы вручную не приходилось на каждом поддомене вписывать название города, он автоматически подставлялся.- вот тут не понятно, как это автоматизировать.

Как это можно организовать?

Кто сможет подсказать или помочь?

D
На сайте с 02.02.2010
Offline
132
#1

Создать для городов новый тип записей city

Добавить города, где post_name города == поддомену


Шорткод

function city_shortcode()
{
  
    $domain = explode('.', $_SERVER['HTTP_HOST']);
    if (!empty($domain[0]) && !empty($domain[1]) && !empty($domain[2])) {
        $page = get_page_by_path($domain[0], OBJECT, 'city');
            return $page->post_title;
    }
}
add_shortcode('city', 'city_shortcode');


Дополнительно если нужно


function add_shortcode_to_filds( $text ){
        return do_shortcode($text);
    }  

apply_filters( 'the_content',  'add_shortcode_to_filds' );

//для работы шорткодов в заголовке страницы
add_filter( 'the_title', 'add_shortcode_to_filds' );

//для работы шорткодов в заголовках и описании плагина  wpseo
add_filter( 'wpseo_title', 'add_shortcode_to_filds' );
add_filter('wpseo_metadesc','add_shortcode_to_filds');

//для работы шорткодов в полях от плагина acf
add_filter('acf/format_value/type=textarea','add_shortcode_to_filds');
add_filter('acf/format_value/type=text','add_shortcode_to_filds');


//изменение ссылок на субдомен
function replace_sity_permalink($permalink, $post)
{
    if ($post->post_type == 'sity') {
        $permalink = str_replace(array(
            '/sity/' . $post->post_name,
            '://'
        ), array(
            '',
            '://' . $post->post_name . '.'
        ), $permalink);
    }
    return $permalink;
}
add_filter('post_link', 'replace_sity_permalink', 20, 3);
add_filter('post_type_link', 'replace_sity_permalink', 20, 3);
S
На сайте с 24.02.2011
Offline
91
#2
Спасибо. Написал вопрос в личку.
S
На сайте с 24.02.2011
Offline
91
#3
Кто сможет реализовать на сайте?

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий