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と別プログラム間でSESSIONが引き継げない場合の対応方法
同一サーバ内に自作したプログラムとWordPressを設置しており両者でセッショ ...
-
-
WordPressでメモリを節約しつつ高速化する設定方法
メモリ1GのVPSを借りてWordpress以外にも、ちょいちょいものを置いてい ...
-
-
WordPressのxmlrpc.phpに対する攻撃の対策方法
サーバーの死活監視をしているシステムから、1つのサイトが落ちているとアラートがき ...
-
-
WordPressのテーマファイル内で取得したオブジェクトを指定のフィールド名でソートする方法
WordPressのテーマファイル内で記事やカテゴリ一覧等を取得するとオブジェク ...
-
-
WordPressにて記事内で動画(mp4)ファイルの再生する方法
WordPressでyoutube等の動画サイトの埋め込みタグではなく、mp4フ ...