http://localhost/test/wordpress?download=true
add_action('template_redirect', 'download_action');
function download_action() {
if($_GET['download'] == 'true') {
$lineList = array();
$lineList[] = '大きな栗の木の下で';
$lineList[] = 'あなたとゾウムシ';
$lineList[] = '栗ひろいでしのぎをけずる';
$txt_file = "test.txt";
$utf8_flg = false; // true:utf8のファイルにする | false:shift-jisファイルにする
$buf="";// バッファ
// Shift-jisでダウンロードする
if(empty($utf8_flg)){
foreach($lineList as $line){
$buf .= mb_convert_encoding($line."¥r¥n", "SJIS-win", "UTF-8");
}
}
else{
$buf = "¥xEF¥xBB¥xBF"; // utf-8形式のファイルにするため、BOMをセットする。
foreach($lineList as $line){
$buf .= $line."¥r¥n";
}
}
header ("Content-disposition: attachment; filename=" . $txt_file);
header ("Content-type: application/octet-stream; name={$txt_file}; charset=utf-8");
print($buf);
exit;
}
}
プラグインのソースファイル(test_animal.php)
// カスタム投稿タイプ
add_action( 'init', create_custam_post_type1 ));
/**
* カスタム投稿タイプを作成する
*/
public function create_custam_post_type1() {
register_post_type( 'gecko_diary',
array(
'labels' => array(
'name' => __( 'ヤモリ' ),
'singular_name' => __( 'Gecko' )
),
'public' => true,
'has_archive' => true,
)
);
}
パーマリンク
パーマリンクとはカスタム投稿タイプの投稿を一般へ公開するためのURLである。
wp_redirect( 'URL' );
exit;
wp_redirect( admin_url('post.php') );
exit;
$plugin_dp = WP_PLUGIN_DIR . '/' . plugin_basename(__DIR__);
// 出力例→ C:¥xampp¥htdocs¥wordpress1¥wp-content¥plugins¥animal
/*
Plugin Name: テスト・アニマル・プラグイン
Plugin URI: http://amaraimusi.sakura.ne.jp/note_prg/wordpress/
Description: プラグイン開発のHello Worldです。
Version: 1.0
Author: kenji uehara
Author URI: http://amaraimusi.sakura.ne.jp/
License: MIT
*/
class TestAnimal {
public function __construct(){
// WPクーロンが未登録なら登録する
if ( ! wp_next_scheduled( 'cron_event1') ) {
wp_schedule_event( time(), 'hourly', 'cron_event1');
}
add_action( 'cron_event1', array($this, 'barkCat' ));
// wp_clear_scheduled_hook('cron_event1'); // WPクーロンを登録解除する
}
public function barkCat(){
error_log('吠えるネコ'); // 一時間に一回、debug.logに出力される
}
}
$query = "SELECT * FROM wp_posts LIMIT 2";
$res = $wpdb->query( $query );
debug($res);// レスポンスは2件
// デバッグモードのSQLダンプ準備
$wpdb->show_errors();
// ★INSERT実行
$result = $wpdb->insert( $table, $ent_s);
// デバッグモードのSQLダンプ出力
$wpdb->print_error();
SELECT
term_id AS category_id,
name AS category_name,
slug AS category_code
FROM
wp_terms
WHERE
term_id = 8
SELECT
WpTermR.object_id AS post_id,
WpTermR.term_taxonomy_id AS category_id,
WpTerm.name AS category_name,
WpTerm.slug AS category_code
FROM wp_term_relationships AS WpTermR
LEFT JOIN wp_terms AS WpTerm
ON(WpTermR.term_taxonomy_id = WpTerm.term_id)
WHERE
WpTermR.object_id IN ('100','101','102','103')
AND term_order = 0
「'100','101','102','103'」は投稿者IDリスト