2017-01-05 90 views
0

我正在開發一個網站,並且我創建了一個爲我創建側邊菜單的js腳本。wordpress在每個帖子上運行javascript代碼

它讀取所有標題並創建滾動菜單。

它完美地工作,我現在面臨的問題是,我必須在每個帖子頁面上調用js函數。由於我的網頁上會有很多帖子,所以這可能會耗費一些時間。每次在網頁上顯示帖子時,是否有任何方法讓我的腳本自動加載?

我如果有人有興趣的代碼波紋管:


 

 
function create_navigation() { 
 
     allid = []; //tabela z vsemi id ji, ki morajo biti v meniju 
 
     elements = document.getElementsByTagName("h1"); 
 
     for (var i = 0; i < elements.length; i++) { 
 
      if (elements[i].id != "") { 
 
       allid.push(elements[i].id) 
 
      } 
 
     } 
 

 
     elements = document.getElementsByTagName("h2"); 
 
     for (var i = 0; i < elements.length; i++) { 
 
      if (elements[i].id != "") { 
 
       allid.push(elements[i].id) 
 
      } 
 
     } 
 

 

 
     for (var i = 0; i < allid.length; i++) { 
 
      var table = document.getElementById("qweqwe"); 
 
      var row = table.insertRow(i); 
 
      var cell1 = row.insertCell(0); 
 
      cell1.innerHTML = "<a href=\"#" + allid[i] + "\" class=\"_ps2id _mPS2id-h mPS2id-highlight mPS2id-highlight-first mPS2id-highlight-last\" data-ps2id-offset=\"\">" + document.getElementById(allid[i]).innerHTML + 
 
        "</a>"; 
 
     } 
 
    }

目前我打電話,我希望它出現在每個崗位頁面上的功能create_navigation。

也是這樣做的正確方法嗎?我有點不熟悉Wordpress,並有時間更好的動態創建側邊菜單。

+0

你可以過去這段代碼試圖通過footer.php –

+0

編輯php代碼是不好的,Wordpress是建立在你可以做這樣的改變而不用編輯代碼的方式。如果您編輯php代碼,您將在更新WP本身時出現問題。如果你想編輯php,建立擴展。 –

+0

好你採取正確的代碼... – Tristup

回答

1

最好的解決方案是將此代碼添加到主題JS文件。這樣它就會在每個頁面加載時加載。

如果沒有在主題JS文件,只需要創建一個:

1,創建文件,即。 scripts.js中

2.Place它themefolder/JS/

3.添加這主題的functions.php(位於主題根文件夾)

function theme_scripts() { 
    wp_enqueue_script('theme-js', get_theme_file_uri('/js/scripts.js'), array('jquery'), '1.0', true); 
} 
add_action('wp_enqueue_scripts', 'theme_scripts'); 
+0

這是做這件事的正確方法。 – Tristup

0

如果您使用允許添加自定義代碼的主題,請使用這些選項。

如果沒有,您可以簡單地在側欄上使用html塊並在其中添加您的腳本。

轉到http://Your-site.com/wp-admin/widgets.php並添加簡單的HTML小部件到側邊欄,然後添加您的js並保存。確保每個頁面上都顯示您的側邊欄。或者只是將小部件放置在不同的位置,這在每個頁面上都可見。

+0

我用你的第二個想法,它完美的作品!謝謝! – Kristjan

+0

那麼請接受回答;)乾杯 –

+0

對不起。忘了嘿嘿。 – Kristjan

相關問題