2015-11-08 90 views
0

我有IIS和WAMP同時運行。他們聽不同的端口,一切都很好,直到我將一個wordpress網站從本地主機移到godaddy。現在,當我加載http://localhost:8080/wordpress/#(這是wamp服務器)時,所有樣式都未加載。 wordpress網站位於www文件夾中。 我加載的樣式表有:未在本地主機上加載Wordpress樣式

<link type="text/css" rel="stylesheet" href="<?php echo trailingslashit(get_bloginfo('template_url')); ?>style.css" media="screen" /> 

和瀏覽器渲染:

<link type="text/css" rel="stylesheet" href="localhost:8080/wordpress/#/wp-content/themes/ParvanTheme/style.css" media="screen"> 

的路徑是正確的。

任何想法如何解決這個問題?

我曾嘗試創建基於Apache虛擬主機。

<VirtualHost *:8080> ... 

儘管IIS將80和WAMP監聽到8080,但虛擬主機仍然會打開IIS。

+0

它總是最好尤其是創建一個虛擬主機來運行現場WordPress站點的副本[見thsi用於創建虛擬主機的幫助(http://stackoverflow.com/questions/23665064/project-links-do - 不是工作-ON-WAMP服務器/ 23990618#23990618) – RiggsFolly

回答

0

的路徑是不正確的,我很難相信有井號的URL中它實際上鍊接到一個物理文件夾在服務器上,如果它大概會你有一些神祕的配置運行,我相信GoDaddy的也沒有。

此外,您沒有正確加載樣式表。在Wordpress中,永遠不會在header.php文件中手動輸入樣式表,您正在繞過wp_head()函數,該函數出於這個特定原因。這會導致你在將來遇到其他無休止的瘋狂問題。

加載樣式表的正確方法是註冊並在functions.php文件排隊一個樣式文件,你的主題文件夾內。

您可以掛鉤的註冊/排隊到你wp_enqueue_scripts行動以這樣的方式

/** 
* Proper way to enqueue scripts and styles 
*/ 
function theme_name_scripts() { 
    wp_enqueue_style('style-name', get_stylesheet_uri()); 
    wp_enqueue_script('script-name', get_template_directory_uri() . '/js/example.js', array(), '1.0.0', true); 
} 

add_action('wp_enqueue_scripts', 'theme_name_scripts'); 

get_stylesheet_uri()直接指向您的style.css坐在主題文件夾,如果你需要附加其他CSS文件,你可以遵循JS入隊的例子。

WordPress的法典是你的朋友,你需要了解的wp_enqueue_style()參數的詳細信息,你可以好好讀的食品相對頁面上:現在https://codex.wordpress.org/Function_Reference/wp_enqueue_style

,到你的IIS/WAMP的問題。如果在8080處打開瀏覽器,仍然可以看到IIS啓動頁面,可能是因爲IIS已經佔用了8080端口,如果Apache應該通知您,它將無法啓動,因爲8080已綁定到另一個正在使用的端口。我可以建議你在WAMP工作時停止IIS,或者將Apache移動到另一個未在系統上使用的端口。

如果一切都失敗了,你可以配置IIS來運行PHP和Wordpress,但請記住這需要在IIS上擺弄一下,而.htaccess文件在這裏根本不起作用(並且你需要手動編寫規則web.config文件)。

相關問題