2017-09-27 126 views
0

如何使用PHP爲我所有的WordPress網站頁面的H1標籤添加屬性?將屬性添加到所有Wordpress頁面的標籤

期望的結果:

<h1 itemprop="name">Title of Article</h1> 
+0

你可以用JS做到,如果它符合你的要求我可以建議你用JS的方式。 –

+1

我用jQuery很容易做到這一點。但它沒有出現在谷歌結構化數據測試工具上。所以我真的沒有看到使用JS的重點。 – Kannan

回答

0

下面是代碼

$html = new DOMDocument(); 
    $html->loadHtml('filename'); 
    $nodes = $html->getElementsByTagName('h1'); 
    foreach ($nodes as $node) { 
      $node->setAttribute('itemprop','name'); 
    } 
    $txt = $html->saveHTML(); 

讓我知道,如果它的工作原理!

編輯:

<?php 

$html = '<h1>Title of Article</h1>'; 

$dom = new DOMDocument(); 
    $dom->loadHtml($html); 
    $nodes = $dom->getElementsByTagName('h1'); 
    foreach ($nodes as $node) { 
      $node->setAttribute('itemprop','name'); 
    } 

$html = $dom->saveHTML(); 
echo $html; 

使用此代碼,你可以看到的結果。只需將上面的代碼粘貼到空白的php文件中並在瀏覽器中運行即可看到結果

+0

非常感謝您的幫助。對不起,我是一個PHP noob。我應該如何將這個添加到functions.php? – Kannan

+0

我不確定你是如何顯示HTML的。我沒有太多進入wordpress –

+0

哦,我看到了,它的好。還是謝謝! – Kannan

0

我想你是指第一個h1在帖子中動態顯示後端定義的帖子或頁面的名稱?

這應該可以使用網頁或文章範本這段代碼在其中,其中標題被默認顯示的位置(這可能是index.phppage.phppost.phpsingle.php等)(必須是WordPress的loop內) :

<h1 itemprop="name"><?php the_title(); ?></h1> 
+0

我的標題標籤是不同於H1,所以我不能使用這個解決方案 – Kannan

+0

好吧,這只是一個例子,採取你張貼的代碼,但當然你可以將其應用於* any *模板文件中的* any *標籤 – Johannes