Rookie Dev

フォーラムへの返信

15件の投稿を表示中 - 16 - 30件目 (全31件中)
  • 返信先: .htaccessでリダイレクト設定 #312

    .htaccessでリダイレクト設定

    .htaccessファイルをどこのディレクトリに置くかについて説明します!

    .htaccessは設置したディレクトリおよび下位のディレクトリに対して設定が適用されます。

    .htaccessは「そのディレクトリへのアクセス」をキャッチして処理するため、
    リダイレクト元のURLが属するディレクトリ、もしくはより上位のディレクトリに置く必要があります。

    そのうえで「必要最小限の影響範囲で設定する」という意味でリスクが低いのは、
    より下層のディレクトリになります。

    またドキュメントルートに1つ配置して、全体をまとめて管理する運用もあるかと思います。

    topic-image

    返信先: WordPressのリダイレクトについて #306

    WordPressのリダイレクトについて

    いくつか選択肢があります!

    • WordPress関数wp_redirectを使用する
      wp_redirect('/new-page/', 301);
      exit;

      この関数はログインの制御やフォーム送信後のリダイレクトなどで使用されます
      動的処理に向いてます。

      内部的にはPHPのheader()です

    • プラグインではRedirection、Simple 301 Redirects等が簡単に使用できます
    • .htaccessでもリダイレクトの設定は可能です
      固定的なURL、大量なリダイレクト、高速処理
      処理タイミングがになりますWordPressが起動する前になります。

    topic-image

    WordPressのパーマリンクで、日本語URLの問題と対策について

    リダイレクト用のWordPressのプラグインもあるので、
    活用できそうであれば!

    https://ja.wordpress.org/plugins/eps-301-redirects/

    WordPressのパーマリンクで、日本語URLの問題と対策について

    パーマリンクを投稿名を含んだものにして、文字に日本語が含まれると
    URLが異常に長くなる(日本語1文字 = 約9文字のエンコード)のが問題ですね

    パーマリンク設定を投稿名から英数字ベースに変更が推奨ですが、
    既存記事が多い場合は段階的アプローチが現実的です。

    パーマリンク設定は投稿名のまま維持して、新規記事のスラッグのみ手動で英数字に変更します。これで既存記事のURLは変わらず、リンク切れを回避できます。

    既存記事は重要度に応じて順次対応し、スラッグを英数字に変更後、旧URLから新URLへ301リダイレクトを設定します。

    理論上は全記事移行完了後にパーマリンク設定自体を数字ベースに変更できますが、
    実際には投稿名設定のまま運用継続することが多くなります。

    WordPressのパーマリンクで、日本語URLの問題と対策について

    パーマリンクの本質はクエリを見やすいURLに変換する機能です!

    WordPressダッシュボードの「設定 > パーマリンク設定」で切り替え可能です。

    topic-image01

    どのパーマリンク設定を選んでも
    投稿オブジェクトは変わらずURLの見た目だけが変わるだけです

    topic-image02

    返信先: Gitのorigin/HEADとは? #221

    Gitのorigin/HEADとは?

    originとはリモートリポジトリの名前です。

    HEADだけだと今ローカルで作業しているブランチを指します。

    origin/HEADはoriginという名前のリモートリポジトリのデフォルトブランチを意味します!

    デフォルトブランチとは
    GitHubなどで「初期表示・初期チェックアウト」に使われるブランチです(mainやmaster)

    動的ルートのSSG?で使用するgenerateStaticParamsを知りたいです

    generateStaticParams は Next.js の「予約済み関数」です。関数名を変えると動作しません

    next build 実行時に generateStaticParams() が呼ばれます。
    一般的には下記のように動的ルート [param] に対し、静的に生成するパスを定義します

    (例)

    // app/blog/[slug]/page.tsx
    export async function generateStaticParams() {
      const posts = await fetch('https://example.com/api/posts').then(res => res.json());
      return posts.map((post) => ({ slug: post.slug }));
    }

    参考記事
    https://nextjsjp.org/docs/app/api-reference/functions/generate-static-params

    返信先: WordPressとTailwind CSSの相性は悪いですか? #194

    WordPressとTailwind CSSの相性は悪いですか?

    WordPressとTailwind CSSの相性が悪い理由

    • CSS Reset(Preflight)の競合
      Tailwindが全てのデフォルトCSSをリセット → WordPressの既存スタイル・プラグインCSSが破綻
    • 動的コンテンツとの不整合
      WordPressは投稿内容やプラグインが動的にHTMLを生成 → Tailwindは事前にクラス名を書く必要がある
    • ビルドしたCSSファイルがGit管理でコンフリクトを起こす
      開発者ごとにNode.jsのバージョンが違う
      npm install時のパッケージバージョンが微妙に異なる
      ビルド時刻やハッシュ値がファイルに含まれる

    個人的にGit管理でコンフリクトはクリティカルかと

    チーム開発でなぜ毎回npm iが必要なのか?

    npm inpm installの短縮形で、パッケージをインストールするコマンドです。
    実行すると、package.jsonに記載された依存関係をnpmレジストリからダウンロードし、node_modulesフォルダに保存します。

    チーム開発では、実際のファイル群(node_modules)ではなくpackage.jsonをGitで共有します。
    受け取った人がnpm iで環境を再現します。

    つまり、メンバーが新しいライブラリを追加してpackage.jsonが更新されたら、他のメンバーはnpm iを実行して環境を同期する必要があります。

    reply-image

    GitでプッシュでPermission denied (publickey) というエラー

    このエラーの原因は、
    SSHキーがGitHubに登録されていないか、
    SSHエージェントに読み込まれていないためですね!

    以前は接続てきていたようなので、以下の通りすれば解決

    • SSHエージェントを起動
      eval "$(ssh-agent -s)"
    • SSHキーのファイルの状況を確認
      ls ~/.ssh/ -la
    • SSHキーをエージェントに追加
      ssh-add ~/.ssh/[your-key]
    • キーが正しく追加されたか確認
      ssh-add -l
    • GitHubとの接続テスト
      ssh -T git@github.com
    • プッシュ
      git push -u origin main

    Dockerを「Docker Desktop」を使わずに使いたい

    以下の通りで、順調にいけば30分くらいで導入可能です!

    • インストール
      # 1. Docker DesktopのWSL統合を無効化(GUI操作)
      # 2. 必要パッケージ確認(既にインストール済み)
      sudo apt-get update
      sudo apt-get install ca-certificates curl gnupg lsb-release
      
      # 3. Docker公式GPGキー追加
      sudo mkdir -m 0755 -p /etc/apt/keyrings
      curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
      
      # 4. Dockerリポジトリ追加
      echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
      
      # 5. Dockerインストール(次のステップ)
      sudo apt-get update
      sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    • ユーザーをdockerグループに追加
      # ユーザーをdockerグループに追加
      # これにより sudo なしで docker コマンドを実行可能になる
      # $USER は現在のユーザー名(wida)を表す環境変数
      sudo usermod -aG docker $USER
      
      # Dockerサービス(デーモン)を開始
      # systemctl は systemd でサービスを管理するコマンド
      # docker デーモンがバックグラウンドで動作開始
      sudo systemctl start docker
      
      # Dockerのバージョン確認
      # インストールが正常に完了し、dockerコマンドが使えることを確認
      docker --version
    • 起動について
      # WSL2を再起動するたびに以下が必要 
      sudo systemctl start docker

      手動起動のまま使ってみて、面倒に感じたら後で自動起動に変更 を検討したらいいかと思います!

    返信先: .htaccessでリダイレクト設定 #164

    .htaccessでリダイレクト設定

    WebページのURL変更でほかにすべきこととしては以下の通りです!

    • 内部リンクを更新
      こちら対応しなくても、.htaccessでリダイレクトによってリンク切れせず、
      ページは表示されます。
      しかし「古いページ → リダイレクト → 新しいページ」という2段階の処理が発生し、
      わずかですが読み込み時間が増加します、、
      また.htaccessファイルに問題が生じた場合に、内部リンクが一斉に切れてしまうリスクもあります
      主要なナビゲーション(メニューやフッター)だけでも更新しておくと安心です。
    • Googleサーチコンソールでサイトマップ・インデックス登録

      reply-image

      基本的に検索エンジンの認識を「早める」ための手段なので、
      301リダイレクトが正しく設定されていれば、必須ではないです

      しばらく経って検索結果に表示されなければ必要に応じて対応を検討すれば十分かもしれません

    返信先: .htaccessでリダイレクト設定 #162

    .htaccessでリダイレクト設定

    オプションについて補足します!

    • R=301
      HTTPステータスコード「301(恒久的な移動)」を返します。
      なお、このオプションがないとリダイレクトしても、
      ブラウザのURLが /old-urlのままでとなります。

      そのため、このオプションを設定し/new-urlを外部的に表示することで、
      検索エンジンに正しく認識されます!
      reply-image

    • Lオプションは「このルールを適用したら、他のルールは見ないで処理を終了してね」という指示です。
      これがないと予期しない連鎖リダイレクトが発生する可能性があります。
      無難につけておくのが一般的です。
    返信先: .htaccessでリダイレクト設定 #158

    .htaccessでリダイレクト設定

    Apacheが使用されている前提の話で進めます!

    リダイレクトの書き方

    RewriteEngine On
    RewriteRule ^old-url$ /new-url [R=301,L]

    内容としては

    • RewriteEngine On
      Apache のmod_rewriteモジュールを有効化して、
      URL書き換え機能が動作するように設定
    • RewriteRule [マッチパターン] [リダイレクト先] [オプション]のように記述
    返信先: WordPressのWP_Queryってなんだっけ? #146

    WordPressのWP_Queryってなんだっけ?

    参考記事です

    指定するための配列で使用するパラメータは下記の通りいろいろ組み込みであります

    • meta_key
    • orderby
    • tax_query
    • post__not_in

    https://kinsta.com/jp/blog/wordpress-get_posts/?utm_source=chatgpt.com

15件の投稿を表示中 - 16 - 30件目 (全31件中)