• 解決済 syntaro

    (@syntarou)


    ブロックエディタで、メディアの上にテキストを置いています。

    縦書きにしてみたのですが、ブロックエディタと不整合になってします。

    CSSは下記のようなものです、右上に縦書きとしています。

    1)高さが反映されず、文字がずれて、輪郭が増えてしまう。

    2)テキストエディタで整形すみテキストとすると、文字の背景が白くなってしまうので、見出しとする必要があるが。一度整形すみテキストとなると、見出しにもどせない。

    3)見出しで改行することができないので、Windowsのメモ帳などで、改行こみのテキストをつくり、コピーペーストしている。

    このあたりが、不都合ありまして、自分でプラグイン(ブロックエディタでなく)を作ろうとしています。

    そこで、「画像ライブラリから、画像をピックアップして保存する方法」がわかりません。

    長文になったのは、これらもフィードバックのひとつして、意味がありそうだと思ったためで、この部分のお返事は、あとまわしで問題ありません。

    下記のCSSの、backgrojund: red;は、テストコードのひとつです。

    以上、プラグイン作成のアドバイスお願いできますでしょうか。

    よろしくお願いします。

    .height50vh {
    height: 35vh !important;
    background: red;
    } .height50vh img {
    height: 35vh !important;
    width: 100% !important;
    object-fit: cover;
    } .height50vh span {
    height: 35vh !important;
    color: lightblue !iportant;
    } .height50vh div {
    height: 35vh !important;
    } .height50vh p {
    height: 35vh !important;
    margin: 10px;
    width: 100%;
    writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    -webkit-writing-mode:vertical-rl;
    }
9件の返信を表示中 - 1 - 9件目 (全9件中)
  • syntarouさん、こんにちは。

    1はちょっと分かりませんが…

    2)テキストエディタで整形すみテキストとすると、文字の背景が白くなってしまうので、見出しとする必要があるが。一度整形すみテキストとなると、見出しにもどせない。

    整形済みテキストの背景が白くなるのは、テーマファイルで<pre>に対してbackgroundが白に指定されているからでは? CSS で打ち消せばいいような気がします。

    3)見出しで改行することができないので、Windowsのメモ帳などで、改行こみのテキストをつくり、コピーペーストしている。

    Shift + Enter で改行できません?

    ご参考になれば。

    トピック投稿者 syntaro

    (@syntarou)

    お返事ありがとうございます。

    メディアの上のテキストは、改行しようとすると、別の段落になってしまいますね。背景:noneはためしてところ、おっしゃる通りの挙動になりました。

    そのあとも、いろいろと、試していたのですが、

    メディアとして画像を配置するさいに、PX単位でサイズを指定できることはわかりました。

    しかし、そのサイズを複数あるレイヤーに適用しているため、一部をCSSでVH単位として上書きしても、すべてには反映されない。

    ということだと思います。

    VHなどを指定できるよになっていれば、今回のケースに対応できるのでしょう。

    ちょっとPX以外を指定する方法がわからないのと、見出しか整形すみテキストか段落かによって、CSSのセレクタがかわってしまう点などから、

    こんかいの、VHを高さに指定したい場合には、自分で、HTMLを出力するプラグインを自作することにします。

    PX以外を指定する方法があれば、そのほうがいいなとは思います。

    しばらくオープンのままにさせてください。よろしくお願いします。

    • この返信は3年、 5ヶ月前にsyntaroが編集しました。

    こんにちは。

    1)高さが反映されず、文字がずれて、輪郭が増えてしまう。

    これがちょっと分からなかったのですが、画像の上にコンテンツ(ブロック)を置きたいという事でしょうか?

    それであれば、カバーブロックに画像を設定、その上にブロックを配置、CSSを調整でも行けそうな気がします。

    .wp-block-cover__inner-container {
    	writing-mode: vertical-rl;
    	width: auto;
    	display: inline-flex;
    	flex-flow: column;
    	gap: 2em;
    }

    このあたりが、不都合ありまして、自分でプラグイン(ブロックエディタでなく)を作ろうとしています。
    そこで、「画像ライブラリから、画像をピックアップして保存する方法」がわかりません。

    メタボックスや管理画面で、メディアライブラリから画像を登録する機能を実装したいという意図であれば、wp.mediaが使えます。この辺りの記事が参考になると思います。

    How to use WordPress Media Upload in plugin / theme – Webkul Blog

    こんにちは。

    1)高さが反映されず、文字がずれて、輪郭が増えてしまう。

    段落ではなく一つ上で writing-mode: vertical-rl を指定すればいいのではないでしょうか?

    .height50vh .wp-block-cover__inner-container {
    	height: 35vh;
    	writing-mode: vertical-rl;
    }

    syntarouさん、こんにちは。

    メディアの上のテキストは、改行しようとすると、別の段落になってしまいますね。

    ほぼデフォルトの WordPress で見出しブロックを追加、文字列を入力し Shift + Enter でブロック内で改行される挙動を確認しております。

    そのまま Enter を押してしまうとブロック内の編集が確定してしまうので、だめですね。

    ご参考になれば。

    トピック投稿者 syntaro

    (@syntarou)

    みなさん本当にありがとうございます。本日、私用で通勤していません。明日、一つづつ確認させていただきます。

    それから、改行は、シフトではなく、コントロールでしたか、間違えていました。

    メディアライブラリも明日確認してみます。ありがとうございます。

    トピック投稿者 syntaro

    (@syntarou)

    こんにちわ。

    さっそく試してみたところ、画像と文字の処理ができるようになりました。

    @charset "utf-8";
    
    /* Cascading Style Sheetsを記述する */
    
    /* 以下を毎回記載してください
     * 担当:、、、 日付:、、、
     * ステータス:実験 or 完了
     * 目的:、、、
     */
    
    /* 
     * 担当 Y.Syntarou
     * 日付 2023/4/5
     * ステータス 実験
     * 目的 画像に文字を縦書きで載せる+自動ズーム
     * 1/3 土台 */
    .height50vh {
    	height: 40vh !important;
    	position: relative:
    	background: none;
    	padding: 0;
    	margin: 0;
    }
    
    /*
     * 目的 画像に文字を縦書きで載せる+自動ズーム
     * 2/3 画像とオーバーレイ 
     */
    .height50vh img, .height50vh span {
    	position: absolute;
    	height: 40vh !important;
    	width: 100% !important;
    	object-fit: cover;
    	margin: 0;
    	padding: 0;
    }
    
    /*
     * 目的 画像に文字を縦書きで載せる+自動ズーム
     * 3/3 インナーコンテンツ
     */
    .height50vh .wp-block-cover__inner-container {
    	height: 40vh !important;
    	color: purple !important;
    	position: absolute;
    	top: 0;
    	writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
    	-webkit-writing-mode:vertical-rl;
    	padding: 16px;
    }
    

    問題は、画像の下部の隙間が残ってしまうことでしょうか。

    たぶん、オーバーレイの部分で、画像のサイズを参照して、サイズとして、埋め込んでいたりする気がします。

    とくに、35vwなどにひっかかり、画像を小さくする場合に、つづく文字の位置が変わらず、余白ができてしまいます。小さい画面だと、画面上が画像、画面下が、文字でなく空白になるという、状態です。

    オーバーレイの部分の、セレクタを、知りたかったのですが、HTMLのソースを見ても、少しの時間では、見つけることが出きませんでした。どのように調べれば、理解しやすいでしょうか。

    もう少し、お願いできませんでしょうか。

    URLを、トップ投稿以外に張っても問題なければ、張りたいです。

    時間経過のためでしょうか。トップの投稿は編集できなくなってしまいました。

    画像ピックアップのプラグインも考えみたいと思います。

    • この返信は3年、 5ヶ月前にsyntaroが編集しました。
    • この返信は3年、 5ヶ月前にsyntaroが編集しました。
    トピック投稿者 syntaro

    (@syntarou)

    皆さん、お世話になっております。

    一応、、こちらのページなのですが、テーマは複数切り替えても、同様の動作となっています。

    ここまでくると、自分でプラグインを頑張ってもいいかなとは、思うのですが、高さにVH指定ができるかどうかだけなのですが、皆さん、こういうとき、プラグイン自作してますよね。

    サイトのURLです。

    https://xs201480.xsrv.jp/experience/forum2/

    こちらに、URLを、書いても問題ありませんでしょうか。

    以上です。

    トピック投稿者 syntaro

    (@syntarou)

    みなさん、ありがとございました。たびたびお騒がせしております。

    下記のように、min-heightのタグによる属性を、importantで上書きすることで、対応できました。

    本当、お騒がせしております。

    これからもよろしくお願いします。

    
    /* 
     * 担当 Y.Syntarou
     * 日付 2023/4/5
     * ステータス 実験
     * 目的 画像に文字を縦書きで載せる+自動ズーム
     * 1/2 土台と画像とオーバーレイ 
     */
    .height50vh {
    	background: red;
    	min-height: 45vh !important; /* これでできました */
    	height: 45vh !important;
    }
    
    .height50vh, .height50vh div, .height50vh span {
    	height: 45vh !important;
    	width: 100% !important;
    }
    
    .height50vh img {
    	height: 45vh !important;
    	width: 100% !important;
    	object-fit: cover;
    }
9件の返信を表示中 - 1 - 9件目 (全9件中)

トピック「自作プラグインからメディアライブラリ」には新たに返信することはできません。