-
投稿者検索結果
-
2019年2月20日 2:54 PM #10713
返信が含まれるトピック: プラグインmy-snow-monkeyでのエラー
あ、もっと広く囲わないといけなかったみたいです、すみません。
add_action( 'plugins_loaded', function() { /* MWフォーム バリデーション追加 */ if ( ! class_exists( "MW_WP_Form_Validation_Rule_RequiredCheckbox" ) ) { class MW_WP_Form_Validation_Rule_RequiredCheckbox extends MW_WP_Form_Abstract_Validation_Rule { protected $name = 'requiredcheckbox'; public function rule( $key, array $options = array() ) { $value = $this->Data->get( $key ); if ( !is_null( $value ) ) { $target = $this->Data->get( $options['target'] ); if ( empty( $value ) && MWF_Functions::is_empty( $target ) ) { $defaults = array( 'target' => null, 'message' => sprintf( '未入力です。メールアドレスのない方は下欄のチェックを入れてください。', $options['target'] ) ); $options = array_merge( $defaults, $options ); return $options['message']; } } } public function admin( $key, $value ) { $target = ''; if ( is_array( $value[$this->getName()] ) && isset( $value[$this->getName()]['target'] ) ) { $target = $value[$this->getName()]['target']; } ?> <table> <tr> <td>必須または選択したチェックボックス項目</td> <td><input type="text" value="<?php echo esc_attr( $target ); ?>" name="<?php echo MWF_Config::NAME; ?>[validation][<?php echo $key; ?>][<?php echo esc_attr( $this->getName() ); ?>][target]" /></td> </tr> </table> <?php } } } function mwform_validation_rule_requiredcheckbox( $validation_rules ) { $instance = new MW_WP_Form_Validation_Rule_RequiredCheckbox(); $validation_rules[$instance->getName()] = $instance; return $validation_rules; } add_filter( 'mwform_validation_rules', 'mwform_validation_rule_requiredcheckbox' ); } );
♥ 0Who liked: No user2019年2月20日 2:35 PM #10711返信が含まれるトピック: プラグインmy-snow-monkeyでのエラー
まだエラーが出ます。エラーの
snow-monkey/my-snow-monkey.php on line 492
の部分は、if ( ! class_exists( "MW_WP_Form_Validation_Rule_RequiredCheckbox" ) ) { class MW_WP_Form_Validation_Rule_RequiredCheckbox extends MW_WP_Form_Abstract_Validation_Rule { protected $name = 'requiredcheckbox';
のうち、この部分です。
class MW_WP_Form_Validation_Rule_RequiredCheckbox extends MW_WP_Form_Abstract_Validation_Rule {
♥ 0Who liked: No user2019年2月20日 2:17 PM #10709先ほど頂いたソースコードを適宜変更してテストしてみたのですが、デモ環境にアップデートは走っているので大丈夫なのかもしれないのですが、Releasesからパッケージが削除されていないので、それがGitHubを参照しているのか自前サーバーを参照しているのか確認できない…という状況です。
webhook.phpの最下部をコメントアウトしてみてはいるのですが…。
♥ 0Who liked: No user2019年2月20日 2:07 PM #10708返信が含まれるトピック: プラグインmy-snow-monkeyでのエラー
plugins_loaded
ではなくafter_setup_theme
にするとどうですかね?♥ 0Who liked: No user2019年2月20日 1:59 PM #10706返信が含まれるトピック: プラグインmy-snow-monkeyでのエラー
ありがとうございます。
以下の内容をご教示いただいた内容に変えてみたのですが、まだエラーが出ます。
add_filter( 'mwform_validation_rules', 'mwform_validation_rule_requiredcheckbox' );
▼エラー内容です。
Fatal error: Class 'MW_WP_Form_Abstract_Validation_Rule' not found in /home/volunavi/stopkodokushi.info/public_html/test3/wp-content/plugins/my-snow-monkey/my-snow-monkey.php on line 492
♥ 0Who liked: No user2019年2月20日 1:55 PM #10705ドメインでやるなら条件式をちょっと変えないとですね。
0 !== strpos
は「先頭一致ではない場合」なので。INSTALLATION_URL
だとライブラリのディレクトリ名が入るので、Snow Monkey サイトの場合だと「INSTALLATION_URL
とは別な値」を条件式に使用していることになるわけですが、ここはあんまり難しく考えずに、単純に zip の URL に github.com って入ってたらおかしいじゃないですか。だからそういう場合は何らか不具合があったということで false にしたいので、自前サーバーの URL で判定させているというだけです。♥ 0Who liked: No user2019年2月20日 1:35 PM #10703ありがとうございます。
/** * There is a case that comes back to GitHub's zip url. * In that case it returns false because it is illegal. * * @param string $url * @return string|false */ add_filter( 'inc2734_github_theme_updater_zip_url', function( $url ) { if ( 0 !== strpos( $url, 'https://snow-monkey.2inc.org/' ) ) { return false; } return $url; } );
この部分のURLなんですが、ここではzipファイルが格納される予定(config.phpのINSTALLATION_URLと同じになる)のURLでしょうか?それともドメイン(サブドメインレベル)でもOKでしょうか?
♥ 0Who liked: No user2019年2月20日 1:15 PM #10702この場合に、wp-github-theme-updater を使いテーマのアップデートを管理画面側で行わせるとすると、別に特段何もする必要はないのでしょうか?
や、フックして、wp-github-theme-updater の挙動を変えないといけません! Snow Monkey の場合は下記のコードを記述しています。
前段が、zip の URL が自前サイトのものになっていない場合は false を返す、後段が、レスポンスの参照先を GitHub から 自前サーバーのものにするコードになります(URL やディレクトリ名はご自身の環境にあわせて適宜変更してください)。
/** * There is a case that comes back to GitHub's zip url. * In that case it returns false because it is illegal. * * @param string $url * @return string|false */ add_filter( 'inc2734_github_theme_updater_zip_url', function( $url ) { if ( 0 !== strpos( $url, 'https://snow-monkey.2inc.org/' ) ) { return false; } return $url; } ); /** * Customize request URL that for updating * * @param string $url * @return string */ add_filter( 'inc2734_github_theme_updater_request_url', function( $url ) { return 'https://snow-monkey.2inc.org/github-api/response.json'; } );
また、GitHub releasesにパッケージを作成させずに自前ホスティングにだけパッケージを生成する流れはどのように作るべきなのでしょうか?(GitHub Releasesにパッケージを作らせる処理を削除するだけ?or Releasesにパッケージは作らせるけど、そのあとに削除?)
self-host-github-releases は GitHub の Release 機能が無いと動かないので、パッケージを作らせる処理は消してはいけません。具体的には、Releases に zip がデプロイされると同時に GitHub Webhook 経由で zip と API のレスポンスを自前サーバーに保存するという流れになるためです。
の一番下にコメントアウトしている部分がありますが、これが自前サーバーへの保存のあとに Releases から zip を消すコードになるので、このコメントアウトを外せば Releases から自動的に zip が消えるようになるはずです。
♥ 0Who liked: No user2019年2月20日 12:56 PM #10699返信が含まれるトピック: IE11での表示不具合
2019年2月20日 12:19 PM #10698返信が含まれるトピック: iPhone Xシリーズのセーフエリアに対応されていない?
ちなみにですが、一度変数に入れてから var で適用しているのはなぜでしょう?直接 env や constant 当てると問題があるのでしょうか?
「変数に入れているのは、携帯端末の回転中に再計算するのを防止する為」と海外サイトでは記載されていました。
その為、そうしています。
(※ 再発動を変数に代入する事で防げるのかデバッグ確認でも出来ませんでしたので、本当は直接入れても大丈夫かも…)なんかいっそ viewport-fit なくしちゃったほうが良い気がしてきました…。
それも一度考えたのですが、将来的なことを考えると解決にならないので悩んでました。
ほとんどのウェブサイトではviewport-fitが無かったり、対策されていなかったり、
横向きでウェブページを見るユーザー数が低いとも言われていたりしますので、私の方で難しく考えすぎなのでしょうか…♥ 0Who liked: No user2019年2月20日 11:18 AM #10682返信が含まれるトピック: iPhone Xシリーズのセーフエリアに対応されていない?
情報共有ありがとうございます! iOS だけに影響があるのかと思ってたのですが、Android や IE にも影響あるんですね…。
ちなみにですが、一度変数に入れてから
var
で適用しているのはなぜでしょう?直接env
やconstant
当てると問題があるのでしょうか?なんかいっそ
viewport-fit
なくしちゃったほうが良い気がしてきました…。♥ 0Who liked: No user2019年2月20日 10:35 AM #10680返信が含まれるトピック: iPhone Xシリーズのセーフエリアに対応されていない?
色々と私たちの制作チームでもお客さんに合わせて調整をしましたが、ややこしい問題でした。
- デバイスが、右に対して傾いているか、左に対して傾いているか、CSSだけでは取れない。
- 左右両方にpaddingを入れた場合は両方に適用されるのでpadding余白が大きく、中央にかなり寄ってしまう。
- envだけではAndroid等で一部対応されず、またIE時等にCSS解釈が正しく行われない。
3の項もある為に、@supportsで対応する形をとりました。
また、2の項から、通常の場合、メニューは左に出るので、padding-bottomと、padding-leftに対して対策をすれば良いようです。
1の項に関しては、leftとrightは縦表示の場合は、leftとrightは0で返却され、topに関しては、iPhoneの場合は0ですがAndroidの場合は機種によってノッチのピクセル分の数字が返される場合があるようです。これによりトグルメニューの一番上の項目がAndroidの場合めり込んでしまう機種も存在していますのでpadding-topで対応した方が良いようです。しかし、padding分はメニュー幅が小さくなるので、ちょっと悩ましい問題です。
また、メニュー以外のコンテンツの場合、フル幅などの対応をどうしたら良いのかは悩み所です。
l-containerにpaddingを設けて対応するのが良いでしょうか?メニューの対策については、その対策情報を勝手ながら下記に共有します。
ご参考になれば幸いです。よろしくお願いします。/* 通常の場合はpaddingを0に設定しておきます。drawer-navに設定しているのはエリア全体に掛ける為です */ #drawer-nav { padding-top: 0; padding-left: 0; padding-bottom: 0; } /* iOS11.0-11.2対応(旧Androidも) */ @supports (padding-left: constant(safe-area-inset-left)) { #drawer-nav { --safe-area-inset-left: constant(safe-area-inset-left); padding-left: var(--safe-area-inset-left); } } @supports (padding-top: constant(safe-area-inset-top)) { #drawer-nav { --safe-area-inset-top: constant(safe-area-inset-top); padding-top: var(--safe-area-inset-top); } } @supports (padding-bottom: constant(safe-area-inset-bottom)) { #drawer-nav { --safe-area-inset-bottom: constant(safe-area-inset-bottom); padding-bottom: var(--safe-area-inset-bottom); } } /* iOS11.2以降(Android 4系対応) */ @supports (padding-left: env(safe-area-inset-left)) { #drawer-nav { --safe-area-inset-left: env(safe-area-inset-left); padding-left: var(--safe-area-inset-left); } } @supports (padding-top: env(safe-area-inset-top)) { #drawer-nav { --safe-area-inset-top: env(safe-area-inset-top); padding-top: var(--safe-area-inset-top); } } @supports (padding-bottom: env(safe-area-inset-bottom)) { #drawer-nav { --safe-area-inset-bottom: env(safe-area-inset-bottom); padding-bottom: var(--safe-area-inset-bottom); } }
♥ 0Who liked: No user2019年2月20日 10:21 AM #10675返信が含まれるトピック: IE11での表示崩れ
ファイルパスだとこちらで確認できないので(そのパソコンの画面からしか見れない)、PDF でしたら Dropbox とかを使っていただくか、もしくは画像であれば返信欄から直接アップロードできます。
♥ 0Who liked: No user2019年2月20日 10:13 AM #10674返信が含まれるトピック: IE11での表示崩れ
表示画面は下記よりご確認下さい。
よろしくお願いいたします。
file:///C:/Users/uekei/Documents/IE11%20表示崩れ.pdf
♥ 0Who liked: No user2019年2月20日 10:08 AM #10672返信が含まれるトピック: 投稿ページを2つ作りたい
基本的なものだとこういう感じでしょうか。
register_post_type( 'news', [ 'public' => true, 'has_archive' => true, 'label' => 'ニュース', 'rewrite' => [ 'with_front' => false, ] ] );
とりあえずこれで news というカスタム投稿タイプが使えるようになるとは思いますが、どのようなレイアウトにしたいかでテンプレートを追加したりが必要になると思います。とりあえず投稿タイプが追加できたらトピック閉じていただいて、テンプレートの追加が必要そうならまた要件にあわせて別にトピック立てていただけたらと思います。
♥ 0Who liked: No user -
投稿者検索結果