kiki222
フォーラムへの返信
-
フォーラム: 使い方全般
返信が含まれるトピック: 特定の固定ページのみ.js外部ファイルが読み込まれる様にしたいnobita様
書いて頂いたコードで、思い通りに出来ました!
何から何まで、ありがとうございました。
分からない事が沢山ありますが、一歩ずつ進んで行きたいと思います。
教えて頂いた事も、どこがどう言う意味なのかを理解しようと思います。
ありがとうございました!フォーラム: 使い方全般
返信が含まれるトピック: 特定の固定ページのみ.js外部ファイルが読み込まれる様にしたいnobita様
同じ方だったのですね!
ご回答ありがとうございます。
私の説明方法が悪くて、何度も申し訳ございません。
インラインでcssの記述は必要ないのですが、
http://www.sample.com/css/jquery.fancybox.css
の記述が必要なのです。function my_add_script_source() { // jquery plugin等、依存関係があるときには、配列に handle を入れてください wp_enqueue_style('myfancyboxcss', 'http://www.sample.com/css/jquery.fancybox.css', array('style'), '2.1.5', 'screen'); wp_enqueue_script('myfancyboxjs', 'http://www.sample.com/js/jquery.fancybox.js', array(), '2.1.5', true); return; }
と記載してもhead内のstyle.cssの後ではなく、
ボディ閉じタグ付近の
http://www.sample.com/js/jquery.fancybox.js
記載部分の近くに挿入されてしまいます。
style.cssの後に挿入される様にするには何か、方法はございますでしょうか?
宜しくお願い致します。フォーラム: 使い方全般
返信が含まれるトピック: 特定の固定ページのみ.js外部ファイルが読み込まれる様にしたいnobita様
回答頂いた方法で、
同じ方かどうか分かりませんが記述方法を紹介している方がいらっしゃいました。
http://tenman.info/labo/snip/archives/5485私にも分かりやすく、ショートコードを利用して
スクリプトへのリンク、インラインのスクリプト、CSSの追加をする事が出来ました。
ですがインラインでcssを記述する必要がないため、
自分なりにコードを変更して<?php add_action( 'after_setup_theme', 'my_scripts_setup' ); function my_scripts_setup() { add_action( 'wp_footer', 'my_add_inline_script', 99 ); add_action( 'wp_enqueue_scripts', 'my_add_inline_style' ); add_shortcode( 'myscripts', 'my_add_script_source' ); } function my_add_inline_style() { global $post; if ( has_shortcode( $post->post_content, 'myfancybox' ) ) { $my_css= ''; //twentytwelve-style は テーマにより異なります。 // link 要素のIDから -css を取り除いたもの wp_add_inline_style( 'style', $my_css ); } } function my_add_script_source() { // jquery plugin等、依存関係があるときには、配列に handle を入れてください wp_enqueue_style('myfancyboxcss', 'http://www.sample.com/css/jquery.fancybox.css', array('style'), '2.1.5', 'screen'); wp_enqueue_script('myfancyboxjs', 'http://www.sample.com/js/jquery.fancybox.js', array(), '2.1.5', true); return; } function my_add_inline_script() { $scripts= '$(document).ready(function() { $(".fancybox").fancybox(); });'; if ( wp_script_is( 'myfancyboxjs', 'done' ) ) { $html= '<script type="text/javascript">%1$s</script>'."\n"; printf( $html, $scripts ); } } ?>
としましたが、
head内ではなく、body閉じタグ付近で
cssへのリンクが挿入されてしまっています。head内のstyle.cssの後に挿入される様にするには、
どこを変更すれば良いものでしょうか?nobita様に限らず、どなたでもご回答をお願いできますでしょうか?
何度も申し訳ございませんが、宜しくお願い致します。フォーラム: 使い方全般
返信が含まれるトピック: 特定の固定ページのみ.js外部ファイルが読み込まれる様にしたいmypacecreator様
お返事が遅くなり、申し訳ございません。
簡単な方法はいつでも出来るのではないかと思い、
記述して頂いたアドレスを参考にfunction.phpに記述する方法で
自分なりに試してみましたが、上手く出来ませんでした。
もう少し試してみたいと思います。
ありがとうございました。フォーラム: 使い方全般
返信が含まれるトピック: htaccessの記述方法について、フォルダ内のindex.htmlをリダイレクトしたい色々なサイトを参考にして
あれやこれやと試していたら
正しくリダイレクトする事が出来ました。
お騒がせ致しました。
一応使ったコードを記載致します。
もし記述間違いなどがあれば、ご指摘頂けますとありがたいです。# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase /wp/ RewriteRule ^index\.php$ - [L] RewriteCond %{THE_REQUEST} ^.*/index.html RewriteRule ^(.*)index.html$ http://www.sample.com/wp/$1 [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /wp/index.php [L] </IfModule> # END WordPress
フォーラム: 使い方全般
返信が含まれるトピック: 特定の固定ページのみ.js外部ファイルが読み込まれる様にしたいnobita様
ご回答ありがとうございます。
function.phpに書き込む方法を教えて頂き、ありがとうございます。
スマートな方法の様なのですが、
スマートすぎてまだまだ分からない部分が多く理解が出来ておりません。
現在はまず、mypacecreator様に回答いただいた方法で試したいと思います。
上手く出来ましたら、その後nobita様に教えて頂いた方法を自分なりに試してみたいと思います。
ありがとうございました。フォーラム: 使い方全般
返信が含まれるトピック: 特定の固定ページのみ.js外部ファイルが読み込まれる様にしたいmypacecreator様
再度のご回答ありがとうございます。
仰って頂いた方法で、切り替える事が出来ました。
まず、1.
header-fancybox.phpを新たに作って、固定ページテンプレートではget_header(‘fancybox’);で呼び出す通常のheader.phpにはfancybox.cssの記述はなし、
header-fancybox.phpのみfancybox.cssを記載しました。
そして、page-fancy.phpを作成し、
固定ページの新規作成画面の「ページ属性」で「テンプレート」を選択出来るようにしました。
(合っておりますでしょうか?)次に、
wp_enqueue_scriptを使えば、footer.phpをいじらなくてもwp_footerの位置でJSを出してくれるようにできます。
<?php wp_enqueue_script('fancybox', 'http://www.sample.com/js/jquery.fancybox.js', array(), '2.1.5', true); ?>
と
header-fancybox.php内に記載したところ、body閉じタグの前にコードが表示されました。ここで、質問なのですが
今まではhead内に直接<script src="http://www.sample.com/js/jquery.fancybox.js?v=2.1.5"></script> <script type="text/javascript"> $(document).ready(function() { $(".fancybox").fancybox(); }); </script>
と記載して呼び出される様にしておりましたが、
p_enqueue_scriptを使用したことにより、<script type="text/javascript"> $(document).ready(function() { $(".fancybox").fancybox(); }); </script>
のみがhead内に残っている状態です。
同じようにbody閉じタグの前に挿入されるようなコードはありますでしょうか?何度も申し訳ございませんが、宜しくお願い致します。
フォーラム: 使い方全般
返信が含まれるトピック: 特定の固定ページのみ.js外部ファイルが読み込まれる様にしたい