2017-05-10 17 views
0

私はWordpressサイトを作成しました。私は最後の部分 - 彼らは実際にWordpressのサイトに入る前に訪問者が "サイトを入力"をクリックする静的なカスタムランディングページに取り組んでいます。 Wordpressでカスタムテンプレートを作成しました。そのテンプレートは以前にランディングページ用に作成したHTMLファイルを使用して作成しました。ランディングページには、訪問者がサイトに入るためにクリックしたページを中心とするイメージが含まれます。また、スタイルシート(CSS)で呼び出される背景画像も含まれています。問題は、ページがスタイルシートを全く参照していないということです。私は、スタイルシートをHTML(今は.php)内で呼び出す必要があるという特別な方法があると仮定しています。これは、jpegイメージがどのように呼び出されたかを変更しなければならないためです。これは、テンプレートとして使用の.phpファイルに私のコードです:Wordpressカスタムテンプレート内でCSSを参照する

<?php 
/* 
Template Name: Your Template Name 
*/ 
?> 
<html> 
<head> 
<title>Site Title</title> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 
<link href="stylesheet_example.css" rel="stylesheet" type="text/css"> 
</head> 

<body> 
<a href="example.com"> 
<img src="<?php bloginfo('template_url'); ?>/images/landing_page.jpg" /> 
</a> 
</body> 
</html> 
<?php ?> 

そして、私のCSS:誰もこれで私を助けることができる場合

body { 
background-image:url(landingpage_shadow.jpg); 
background-repeat: none; 
background-size: 100%; 
text-align: center; 
width: 100%; 
margin-top: 50px; 
} 

に、それをいただければ幸いです!私は何時間もオンラインで答えを探し出して何も見つけることができませんでした。ありがとう

答えて

0

CSSファイルの相対URLを使用しています。これは、PHPファイルが存在するテーマフォルダではなく、ランディングページのURLに関連しているため、CSSは見つかりません。

直接の問題の解決方法はget_template_directory_ur();です。

<link href="<?php echo get_template_directory_uri(); ?>/stylesheet_example.css" rel="stylesheet" type="text/css"> 

上記のコードは、CSSファイルがテーマディレクトリのルートにあることを前提としています。

https://developer.wordpress.org/reference/functions/get_template_directory_uri/

より広範に、あなたは、このテンプレートが表示されている方法を見てする必要があります。ヘッドセクションで呼び出されたWordPressのエンキュー機能wp_head()を使用する必要があります。私は、私の見解では、コードがいくつかのリストラを必要としているが、提供されている例ではない理由を理解することができます。

https://developer.wordpress.org/reference/functions/wp_enqueue_style/

+0

入力いただき、ありがとうございます!私はこのような何かをする必要があることを知っていたが、私はちょうど始める方法も知らなかった。私はあなたが含まれているリンクを見て、コードを修正し、それが動作するかどうかを確認します。再度、感謝します。 –

+0

ありがとうございました!それは働いた:Dあなたは私の一日を作った! –

関連する問題