2016-01-20 6 views
0

Я хочу отображать только конкретный контент с одного сайта на другой.Wordpress: Получить указанный контент с другой страницы

Например:
Я хочу показать текст внутри <div> @ другой страницы.

Страница A:

<h2>This is page A</h2> 

<div id="showonly">This is the content I want to show in footer for ex.</div> 

Footer:
Теперь я хочу показать только DIV с этим конкретным идентификатором.

То, что я сделал до сих пор:

  1. Это моя функция для получения контента со страницы (все содержимое)

    function show_post_leweb($path) { 
        $post = get_page_by_path($path);  
        $content = apply_filters('the_content', $post->post_content);  
        echo $content;  
    } 
    
  2. В footer.php я сделал тогда:

    $content_leweb = show_post_leweb('kontakt'); 
    echo '<div class="special-content">' .$content_leweb . '</div>'; 
    

Работы отлично, но Мне нужен только определенный div, а не целая страница, как я уже упоминал выше.

ответ

0

Вам необходимо использовать preg_match для определенного содержимого с выхода.

Таким образом, используя preg_match. класть состояние начала ... конец div. то вы получите только div-контент в своем выпуске.

Для получения дополнительной информации см. http://php.net/manual/en/function.preg-match.php.

Прежде всего, сделайте свое регулярное выражение менее жадным, используя? оператор. Это позволит вам не получить больше, чем вы думаете, что получите. Следующее - оператор/s в конце вашего выражения. Я предполагаю, что вы разбираете HTML-файл, который содержит много новых строковых символов «\ n».

$value=preg_match_all('/<div class=\"name\-of\-class\">(.*?)<\/div>/s',$file_contents,$estimates);