cssなどを非同期 で読み込む

フッターにオープン用

<script>
  ///非同期を 読み込むためのもの ページスピード用
//webfont css等
(function(window,document){
    // .lazy-cssを探します
    var lazyCss=document.querySelectorAll('.lazy-css');
    for(var i=0,l=lazyCss.length;i<l;i++){
        // 一つずつ『stylesheet』に変更します
        lazyCss[i].rel='stylesheet';
    }
})(window,document);
</script>

該当css

<link href="/css/style.css" rel="subresource" class="lazy-css" />

 

 

https://www.zukoo.net/blog/detail.html?id=270

or

サイトの表示高速化につながる18のこと

 

サイト表示速度 スクリプトを フッター もしくは非同期

//スクリプトをフッター
function move_scripts(){
  remove_action('wp_head', 'wp_print_scripts');
  remove_action('wp_head', 'wp_print_head_scripts', 9);
  remove_action('wp_head', 'wp_enqueue_scripts', 1);
  add_action('wp_footer', 'wp_print_scripts', 5);
  add_action('wp_footer', 'wp_print_head_scripts', 5);
  add_action('wp_footer', 'wp_enqueue_scripts', 5);
}
add_action( 'wp_enqueue_scripts', 'move_scripts' );

上記でwordpressから出るのをフッターで

 

ヘッダー自主を非同期

<script async src="<?php echo get_template_directory_uri(); ?>/0_d/js/wow.min.js"></script>

 

ロボットテキストをデフォルトで差し込む wordpress

ローカルからアップ 設定 検索エンジン 開放忘れずに

 

さて

下記ファンク

 

// インデックスと巡回の設定 */
function add_noindex_insert(){
    if(is_singular('menu') or is_singular('site') or is_singular('d_contents') or is_singular('top_img')
     //or is_singular('post') //ブログなしの場合のみ
     )
    {
        echo '<meta name="robots" content="noindex,nofollow,noarchive">'."\n";
        echo '<meta name="googlebot" content="noindex,nofollow,noarchive">'."\n";
    }
    
    /* 特定の固定ページ */
//	if (is_page(array('slag名','slag名'))) {
//		echo '<meta name="robots" content="noindex,nofollow,noarchive">'."\n";
//		echo '<meta name="googlebot" content="noindex,nofollow,noarchive">'."\n";
//	}

//	/* 特定の投稿 */
//	if (is_single(array('記事ID', '記事ID'))) {
//		echo '<meta name="robots" content="noindex,nofollow,noarchive">'."\n";
//		echo '<meta name="googlebot" content="noindex,nofollow,noarchive">'."\n";
//	}

//	/* カテゴリアーカイブ */
//	if (is_category()) {
//		echo '<meta name="robots" content="noindex,nofollow,noarchive">'."\n";
//		echo '<meta name="googlebot" content="noindex,nofollow,noarchive">'."\n";
//	}

//	/* 検索結果 */
//	if (is_search()) {
//		echo '<meta name="robots" content="noindex,nofollow,noarchive">'."\n";
//		echo '<meta name="googlebot" content="noindex,nofollow,noarchive">'."\n";
//	}
}
add_action('wp_head', 'add_noindex_insert');
add_action('wp_footer', 'file_load_scripts_styles');

 

ページ内タブメニュー ページ移管なし

<!-- タブメニュー -->
<p id="tabcontrol">
 <a href="#tabpage1" class="no_scroll">サーバー</a>
   <a href="#tabpage2" class="no_scroll">保守サイト</a>
      
   <a href="#tabpage3" class="no_scroll">終了サイト</a>
      <a href="#tabpage4" class="no_scroll">メモ</a>
</p>
<!---->
<!-- タブ囲み-->
<div id="tabbody">
     
     <!-- タブ1-->
     <div id="tabpage1" class="tab_con">
         
<div class="d_con_all" ><div class="d_con_width" >           
    
    
    <h2 class="h2_class">サーバー・ドメイン・バックアップスケジュール</h2>

内容
   </div></div> 
</div>
<!--      タブ1 end -->
    
         
              <!-- タブ2-->
     <div id="tabpage2"  class="tab_con">
         
<div class="d_con_all " ><div class="d_con_width" >  
    
<h2 class="h2_class">保守サイト</h2>

内容
   </div></div> 
</div>
<!--      タブ2 end -->
.con_box1{font-size: 15px;}

#tabcontrol a {
   display: inline-block;            /* インラインブロック化 */
   border-width: 1px 1px 0px 1px;    /* 下以外の枠線を引く */
   border-style: solid;              /* 枠線の種類:実線 */
   border-color: black;              /* 枠線の色:黒色 */
   border-radius: 0.75em 0.75em 0 0; /* 枠線の左上角と右上角だけを丸く */
   padding: 0.75em 1em;              /* 内側の余白 */
   text-decoration: none;            /* リンクの下線を消す */
   color: black;                     /* 文字色:黒色 */
   background-color: white;          /* 背景色:白色 */
   font-weight: bold;                /* 太字 */
   position: relative;               /* JavaScriptでz-indexを調整するために必要 */
    
}
/* ▼タブにマウスポインタが載った際(任意) */
#tabcontrol a:hover {
   text-decoration: underline;       /* 文字に下線を引く */
}


/* ▼タブの中身 */
#tabbody {
   border-top: 1px solid black; /* 枠線:黒色の実線を1pxの太さで引く */
   margin-top: -1px;        /* 上側にあるタブと1pxだけ重ねるために「-1px」を指定 */
   padding: 1em;            /* 内側の余白量 */
   background-color: white; /* 背景色:白色 */
   position: relative;      /* z-indexを調整するために必要 */
   z-index: 0;              /* 重なり順序を「最も背面」にするため */
}

/* ▼タブの配色 */
#tabcontrol a:nth-child(1), #tabbody #tabpage1 { background-color: #ffffdd; }/* 1つ目のタブとその中身用の配色 */
#tabcontrol a:nth-child(2), #tabbody #tabpage2 { background-color: #ddffdd; }/* 2つ目のタブとその中身用の配色 */
#tabcontrol a:nth-child(3), #tabbody #tabpage3 { background-color: #f9f9f9; }/* 3つ目のタブとその中身用の配色 */

htmlよりあと

<script type="text/javascript">
// ---------------------------
// ▼A:対象要素を得る
// ---------------------------
var tabs = document.getElementById('tabcontrol').getElementsByTagName('a');
var pages = document.getElementById('tabbody').getElementsByClassName('tab_con');

// ---------------------------
// ▼B:タブの切り替え処理
// ---------------------------
function changeTab() {
   // ▼B-1. href属性値から対象のid名を抜き出す
   var targetid = this.href.substring(this.href.indexOf('#')+1,this.href.length);

   // ▼B-2. 指定のタブページだけを表示する
   for(var i=0; i<pages.length; i++) {
      if( pages[i].id != targetid ) {
         pages[i].style.display = "none";
      }
      else {
         pages[i].style.display = "block";
      }
   }

   // ▼B-3. クリックされたタブを前面に表示する
   for(var i=0; i<tabs.length; i++) {
      tabs[i].style.zIndex = "0";
       tabs[i].classList.remove('tab_active'); //追記 クラスを取る
   }
   this.style.zIndex = "10";
    this.classList.add('tab_active'); //追記 クラスを追加

   // ▼B-4. ページ遷移しないようにfalseを返す
   return false;
}

// ---------------------------
// ▼C:すべてのタブに対して、クリック時にchangeTab関数が実行されるよう指定する
// ---------------------------
for(var i=0; i<tabs.length; i++) {
   tabs[i].onclick = changeTab;
}

// ---------------------------
// ▼D:最初は先頭のタブを選択しておく
// ---------------------------
tabs[0].onclick();

</script>

もしくは

<?php include(get_template_directory() . "/8_page_0_page/tab_script.php"); ?>

 

参考

https://allabout.co.jp/gm/gc/23969/4/

スマホだと 2回タップしないと リンクが飛ばない時

 <?php /////// なぜだか スマホで2回タップしないとリンクが機能しない場合 BODYにontouchstartの追加と同じ ?>   
<script>
window.ontouchstart = function() {};
window.addEventListener('touchstart', function() {}, true);
window.addEventListener('touchstart', function() {}, false);
</script>
<?php //// ?>

ヘッダにこれを追加

もしくは

<body ontouchstart="">
  <div id="wrapper">
    <div class="box"></div>
  </div>
</body>

ontouchstart=””を追加するといいらしいが未検証

https://nldot.info/if-you-dont-touch-the-iphone-twice-and-the-link-doesnt-fly-how-do-you-handle-it/

amazon定期便の毎月の管理方法

amazon定期便の毎月の管理方法

11日配送なのですが

毎月1日に定期便にログインして値段をチェックします。

定期便が決定された価格が、現在の価格より高い場合

その配送の商品をチェックして、

スキップし、その画面のまま

来月分をクリックし、配送日を今月の11に変更すると、

今の値段が適応されます。

 

画面移管すると、どうなるか不明

3つあって 15%になっているので

1個スキップした際、残りのやつまで現在の価格になってしまわないか確認

ただ、3つを2つにしても、価格は古いままだったので

今の価格にならず、その時から10%に戻るかも

Instagram feed Smash Balloon Social Photo Feed で ビジネスアカウント プロアカウントを連携

WordPressプラグイン『Smash Balloon Social Photo Feed』でInstagramをサイトに埋め込む方法

https://tetemarche.zendesk.com/hc/ja/articles/360026951214-Instagram%E3%82%A2%E3%82%AB%E3%82%A6%E3%83%B3%E3%83%88%E3%81%A8Facebook%E3%83%9A%E3%83%BC%E3%82%B8%E3%81%AE%E9%80%A3%E6%90%BA%E7%A2%BA%E8%AA%8D%E3%82%92%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%81%AF%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%81%8B-

 

 

インスタですが、
ビジネスアカウント(プロアカウント)だったので、
表示にfacebookのアプリを使うので、
facebookと、インスタを連携して、
連携したfacebookのアカウント パスも必要でした。

多分、facebookページ見当たらなかったので、
こっちで勝手に作って、リンクさせて、
あとから、クライアントのfacebookに管理者権限付与しようかと思ってます。

管理者権限付与には
案件のfacebook設定用アカウント作ったので、
https://www.facebook.com/profile.php?id=100078050692990&sk=about
それとクライアントのfacebookが友達になる必要があります。

以上

コンタクトフォームで 任意のページ以外ははサンクスに送らない

普通に分岐したらTM-printでうまく分岐できなかったので

そもそも、ファンクションに入れるコード自体を、そのお問い合わせフォームにしか入れないという分岐

add_action( 'wp_footer', 'add_thanks_page' );
function add_thanks_page() {
if( is_page('9')){
echo <<< EOD
<script>
document.addEventListener( 'wpcf7mailsent', function( event ) {

  location = '/mail-thanks/'; 
  
}, false );
</script>
EOD;
}
    }

 

wordpress url アクセス制限 ベーシック認証

https://takayakondo.com/individual-basic-authentication/

 

ファンクション

function basic_auth($auth_list,$realm="Restricted Area",$failed_text="認証に失敗しました"){
if (isset($_SERVER['PHP_AUTH_USER']) and isset($auth_list[$_SERVER['PHP_AUTH_USER']])){
if ($auth_list[$_SERVER['PHP_AUTH_USER']] == $_SERVER['PHP_AUTH_PW']){
return $_SERVER['PHP_AUTH_USER'];
}
}
header('WWW-Authenticate: Basic realm="'.$realm.'"');
header('HTTP/1.0 401 Unauthorized');
header('Content-type: text/html; charset='.mb_internal_encoding());
die($failed_text);
}

 

ヘッダー最初

<head>
  <?php  
    if(!is_home()):
if(is_page('5555') ||is_page('5561')||is_page('5563')||is_page('5565')||is_page('5559') ):
$userArray = array(
"guest" => "passguest"
);
basic_auth($userArray);
endif;
endif;

    ?>

htaccess

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

ここのぶぶん

RewriteCond %{HTTP:Authorization} ^(.*)
RewriteRule ^(.*) - [E=HTTP_AUTHORIZATION:%1]

参考

https://takayakondo.com/individual-basic-authentication/

mpcbeatで作成したトラックをロジックでMIXするためには

ソングの状態で

file  >    export   >   As Audio Mixdown

 

この状態でエクスポート

そうすると各プログラムのバラオーディオが出来る

しかし、ドラムプログラムは1つのキットでいくつも音を出しているため、

ソロでエクスポートしたい。

 

 

チャンネルミキサーで ドラムプラグラムをソロに

(利用していないプログラムはMにならなかった)(またホームに戻り再びチャンネルミキサーに戻るとソロボタンは消えているがソロになっている)

何故かうまく行かない時があったので他をMした。

その後

利用しているトラック(シーケンス?)をソロに

ソングにてアウトプットを書き出す。

予約更新 PublishPress Revisions

 

PublishPress Revisions

https://qiita.com/sararilfy/items/d6bf47ce4ebaff575b09 参考

□インスト設定

おそらく何もしなくても「Enable Scheduled Revisions」にチェックは入っていると思いますが、一応確認

リビジョンメニューにある、Setting(設定)画面で、非同期の更新にチェックが入っていると動かない場合があるそうです。
Scheduled revisions are not publishing チェックはずす

更新する日時設定を数分後にしても動かないかも

20分後とかでテストできた

□やりかた

記事ページでリビジョンを作成 New Revision

リビジョンページで出来たリビジョンを編集 後 公開日時を設定

その後一覧より選択 し 承認する を選び スケジュールモードに入れる Scheduled

 

以上

ブログスタイルを追加する方法

新 名前の変更

  1. すべては    0_style.lessに書いてあるものが 利用されている。
  2. 0_style.less1_blog_style.lessで .blog_con と囲って コンテンツで利用
  3. 0_style.less2_edit_style.lessで読み込み子テーマのカラー設定と合わせて記述しコアラで自動コンパイルさせて、2_edit_style.cssを作成している
  4. 2_edit_style.cssedit_funk.phpで管理画面に読み込ませるよう指示して、さらにTinyMCEエディター画面に新しくスタイルを入れ込む指示を入れている
  5. edit_funk.phpをファンクションで読み込んでいる

(※カラーlessは@site_color 以外使ってないので、改善点あり)

新しくスタイルを追加するには0_style.less

にスタイルを追加すれば、表示は可能

ブログコンテンツ以外に使いたいなら1_blog_style.less

の囲いにクラスを追加する

エディターに反映させるには、コアラで2_edit_style.lessを自動コンパイル

それを呼び出すにはedit_funk.php

でクラスを追加するか、アドクイックタグ プラグインでクラスを追加するか

 

名前を変える際、必要だったファイルの変更(上記内容以外)

・ファンクション

require_once locate_template(‘1_less/d_4_blog/edit/edit_funk.php’); // ブログエディット

・イントless

//ブログエディター共有
@import “d_4_blog/edit/1_blog_style.less”;//ブログコンテンツ コンテンツ内のcss

 

 

 

 

 

  1. すべては    con_style.lessに書いてあるものが 利用されている。
  2. con_style.lessblog_con_h2.lessで .blog_con と囲って コンテンツで利用
  3. con_style.lessedit_style.lessで読み込み子テーマのカラー設定と合わせて記述しコアラで自動コンパイルさせて、edit_style.cssを作成している
  4. edit_style.cssedit_style_h2.phpで管理画面に読み込ませるよう指示して、さらにTinyMCEエディター画面に新しくスタイルを入れ込む指示を入れている
  5. edit_style_h2.phpをファンクションで読み込んでいる

 

新しくスタイルを追加するにはcon_style.less

にスタイルを追加すれば、表示は可能

ブログコンテンツ以外に使いたいならblog_con_h2.less

の囲いにクラスを追加する

エディターに反映させるには、コアラでedit_style.lessを自動コンパイル

それを呼び出すにはedit_style_h2.php

でクラスを追加するか、アドクイックタグ プラグインでクラスを追加するか

 

お客様の声など wysiwyg エディタにもブログスタイルを

<div class="wys"></div>

で囲むだけ

さらに表示を変更したいのであれば、
<div class="wys koe_wys"></div>

などとし、
スタイルを書けば表示は変更できる

さらに管理画面までとなると

エディタースタイルに
cssを追加して

アドバンスカスタムフィールドの
ラッパーの属性に

koe_wys といれればよいか

 

ピン留め記事を表示してから、他の記事を新しい順に並べる

2つやり方がありそう

中古車販売 まとめ

1つは、タクソノミーを作って タクソノミーでカスタムフィールドを作成

ピン留めなし (0)

ピン留め(1)

でメタクエリを取得して、大きい方から表示

 

もう一つはarray_multisortを使って配列を並び替える方法

array_multisort で お客様の声 やクライアントの事例を並び替えた。配列の並び替え

 

 

 

MAMP PRO6 まとめ

おかしいな?設定リフレッシュ

file:///Library/PrivilegedHelperTools/de.appsolute.mampprohelper

フォルダ分け

file:///Users/あなた/Library/Application Support/appsolute/MAMP PRO/structure6.plist

ホスト

file:///Users/tarou/Library/Application Support/appsolute/MAMP PRO/settings6.plist

 

データベース

MAMP
file:///Applications/MAMP/db/mysql57/

PRO
file:///Library/Application Support/appsolute/MAMP PRO/db/mysql57/

ここのみシンボリック 外付け中

 

重要なデータは持ち帰りたいという事もあるが

認識せずに起動して保存してしまうと、上記が上書きされておかしくなるので

DB以外のシンボリックはやめたなり

 

その他

file:///Library/LaunchDaemons/de.appsolute.mampprohelper.plist

フォルダ参考 過去シンボリックリンク

file:///Users/わたし/Library/Application Support/appsolute/MAMP PRO/

file:///Library/Application Support/appsolute/MAMP PRO/

 

DB データベース 8MBまでしかアップできない、、

PHPバージョン確認はphpMyAdmin のTOP

Web serverの欄に書いてある 今回はPHP version: 7.3.27 だったので

Proでそのテンプレートを編集

  • post_max_size
  • upload_max_filesize
  • memory_limit

post_max_size < upload_max_filesize < memory_limitとする必要あり

 

あと、

pro エディットで

short_open_tag = Off を

short_open_tag = On に

 

memory_limit = 2048M に 大きく

max_execution_time = 300 に大きく 一応

MPC Beats MPK mni の最初からロジックまで

インスト・素材をすべてDL

赤井・アイロックのアカウントいる

 

仕組み

ドラムキットは右の欄から選べる

 

ロジックで鳴らす

ソフトウエア音源 MPC Beats ステレオ

開いて、

そして、一番のメインポイントは

ロジックでミックス

これでロジックでミックスできる

 

note repeat

は機器のnote repeatを押しながらK2ホイールを回すか

キーボード記載の1/32などを押すと変更できる。

再生中のみ連打できる

1/32TでTRAP風の超連打も可能

 

PAD PERFFORM

TYPEを プログレッションにすると パッドで和音が鳴る 指定のコードで外れない

NOTEにすると パッドでそのコードで弾ける

コードにすると指定の音が最も下で色々なコードが弾ける?

ほかは不明 上記も不明確

 

和音は思っていた曲と異なっていくのでなるべく自分で叩く以外は使わないほうがぶなん

ノートで コードをずらさないのはありか?まあよくわからん

 

16LEVEL

パッドの最後にさわったパッドが16LEVELを押すとなる。

808に音階をつけたい場合は

Type:をチューンにすると音階ができる

これをRECしてどこに設定があるかというと、

VELOCITYとか書いてあるところの下

MODFIERでプラス・マイナスが書いてあり音階をいじってあるデータがある

 

プラグイン

logicはauだが、MPCはvstなようだ

preference Pluginでスキャンすると出てくる

 

番外編

UADは購入していないものもアサインされるので、ロジックでまず使えるものだけの
ライブラリ/オーディオ/プラグイン/Components

でUADのいらないものを削除しよう。アプデでもとに戻るので、全てを保ったまままず、利用できるものにカラータグをつけてそれを別の保存用のフォルダにコピー

してから、カラータグのついていないUADをすべて削除
プラグインマネージャーでリセットして再起動でみやすくなる。

そのカラータグを参考にVSTも修正すればOK

ライブラリ/オーディオ/プラグイン/VST/UAD

 

 

エフェクトの利用方法 音をかっこよく止める

このようにインサートすると

オートメーションが書ける

 

サンプリング

ドラッグして読み込んでダブルクリック

もしくはパッドの音の場合、右クリックでサウンドがハイライトされるので

それをダブルクリック

パッドが使えなかったが

取説にあった設定

これにしたらパッドでサンプルを再生できた

あとこんなことも書いてあったがなんだろう?