2010-03-13 344 views
1

我把我的WordPress的永久鏈接結構設置爲/%postname%/但現在當我去主頁以外的頁面(例如,如果我去somelink.com/about)我失去了所有的JavaScript引用。WordPress的永久鏈接

我認爲這是因爲指向js文件的鏈接不再正確,因爲它位於想象文件夾「about」中。這是如何在header.php文件中引用js文件的。

 <script type="text/javascript" src="wp-content/themes/default/js/jquery-1.4.2.min.js"></script> 
    <script type="text/javascript" src="wp-content/themes/default/js/cufon-yui.js"></script> 
    <script type="text/javascript" src="wp-content/themes/default/js/Goudy_Bookletter_1911_400.font.js"></script> 
    <script type="text/javascript"> 
     $(document).ready(function() {  
      Cufon.replace('h1'); 
      Cufon.replace('h3', {textShadow:'0 1px #fff'}); 
     }); 
    </script> 

我做錯了什麼?

回答

3

,如果你在你的模板文件引用任何你可以使用

1:

<?php bloginfo('url');?> 

或2:

<?php bloginfo('template_url');?> 

這將被編碼爲:

<script type="text/javascript" src="<?php bloginfo('url');?>/wp-content/themes/default/js/jquery-1.4.2.min.js"</script> 

o r

<script type="text/javascript" src="<?php bloginfo('template_url');?>/js/jquery-1.4.2.min.js"</script> 

1:加載主站點URL; 2:將絕對url返回到您當前的主題目錄,

(這對主題開發更好)。

+0

嘿,夥計!非常感謝!這正是我所期待的。我愛這是多麼容易使用...再次感謝 – codedude 2010-03-13 22:51:37

+0

我同意,這是更容易放入地方,然後wp_enqueue_script。您仍然可能在您的主題中不止一次加載jQuery,特別是如果您使用的是使用jQuery的插件,但是如果開銷並不重要,那麼這是處理它的一種更簡單的方法。 – cori 2010-03-15 12:46:04

1

我收集你手動插入javascript調用,這不是處理jQuery包含在Wordpress中的最佳方式 - 你應該看看wp_enqueue_script,如果插件或主題會讓你不止一次包含jquery庫你正在使用的還包括他們。

此外,你有源代碼編寫,我相信你是正確的 - 客戶端正在尋找/ about下的相對路徑中的js文件。在wp-content之前放置一個「/」,讓客戶機在根目錄內的wp-content內部查找它們(假設WP安裝在根目錄下)。

+0

我一直在尋找到wp_enqueue_script。事實上,也許你可以幫助我一些事情。我將如何參考我在本地的腳本?我想引用Cufon腳本wordpress沒有包含它。 – codedude 2010-03-13 21:57:52

+0

查看$ src param,它將wp的腳本加載器指向所需腳本的url,以及$ depends param,它告訴WP在自定義腳本之前需要加載哪些內置腳本。有關基於scriptaculous的示例,請參閱http://codex.wordpress.org/Function_Reference/wp_enqueue_script#Load_script_depends_on_scriptaculous。 如果您熟悉WP之外的jQuery,請注意http://codex.wordpress.org/Function_Reference/wp_enqueue_script#jQuery_noConflict_wrappers中的無包裝包裝信息。 – cori 2010-03-13 22:31:38