WordPress内でPHPの独自プログラムページを実装する方法
WordPress内にてPHPで作ったシステムを実装したい。ヘッダー / フッター等の共通パーツはWordPressのものをそのまま使いたい(includeしたい)。またシステム内でPOSTパラメータの受け渡しやSESSIONを利用したい。以下に実装方法をメモ。
実装方法
ソースコード
<?php //SESSIONは普通のPHPと同様に使用可能 session_name('test_session'); session_start(); //パスは適宜変更 include('../wp-load.php'); ?> <!-- 共通パーツは使用しているテーマに合わせて呼び出す --> <?php get_header(); ?> <?php //POSTやGETは普通のPHPと同様に使用可能 if( isset($_POST) ){ var_dump($_POST); } ?> <?php get_sidebar(); ?> <?php get_footer(); ?>
ディレクトリ
「wordpress/【好きなディレクトリ名】」のようなディレクトリに上記ソースコードのファイルをアップロードすることで「https://test.com/wordpress/【好きなディレクトリ名】」という形で表示できる。
内容的にはWordPressと別のプログラムだけどURL的にはWordPress内のページに見える筈。
wp-load.php
wp-load.phpをincludeすることでwordpressとは別のディレクトリでもwordpress関数を使用することができる。
そのためget_headerやget_footerで共通パーツを呼び出せる。
尚、共通パーツの呼び出しに関してはテーマファイルによって異なる(サイドバーが無い等)と思うので使用しているテーマファイルに合わせること。
POST / GET / SESSION
POST / GET / SESSIONは普通のPHPと同様に使用可能。
JavaScript / CSSについて
プラグインで使用するJavaScriptやCSSについては自動読み込みされる。
テーマファイルで使用するものについてはテーマファイルの設定次第だとは思うけど、大抵読み込みされる筈。
関連記事
-
-
WordPressにてAdvanced Custom Fieldsを用いて連載(シリーズ)記事機能を実装する方法
先日「Series」プラグインで連載(シリーズ)記事機能の実装方法をメモしたが、 ...
-
-
Advanced Custom Fieldsでチェックボックスの記事を取得
Advanced Custom Fieldsでチェックボックス設定しているカスタ ...
-
-
WordPressで複数あるクリック広告をランダムで表示させる方法
同じクリック広告をずっと貼っているとクリック単価が下がると聞いた。WordPre ...
-
-
Advanced Custom Fieldsで設定した項目を条件に記事一覧を取得する方法
WordPressでAdvanced Custom Fieldsにて設定した項目 ...
-
-
WordPressで「No URL was~」というエラーの原因と対応方法
WordPressでmp4ファイルをアップロードして記事に埋め込んだものの、記事 ...