0

PHP の if ステートメントについて少し助けが必要です。WordPress に読み込んでいるページに応じて、offset という変数を設定しようとしています。変数は次のとおりです。

$offset = ($paged * 6);

それが行うことは、次の最初のページをロードすることです。

http://example.com/blog

$paged は URL の追加番号を参照しているため、$offset は 0 に設定されます。たとえば、2 番目のページは次のとおりです。

http://example.com/blog/2/

これにより、$offset が 12 に設定されます。問題は、$offset を 6 として定義する 2 ページ目、$offset を 12 として定義する 3 ページ目などです。

$offset = ($paged * 6 - 6)

最初のページを除いて機能します。最初のページでは、$offset を -6 と定義しています。SO、$paged が 0 に等しい場合、$offset は 0 に等しく、それ以外の場合は $offset が ($paged * 6 - 6) に等しいという if ステートメントを作成したかったのです。

ここで何をする必要があるかは理解していますが、構文に苦労しています。どんな助けでも大歓迎です。ありがとう!

4

4 に答える 4

4

これは 1 つの数式に簡単に統合できない 2 つの異なるケースであるため、次のifステートメントを使用します。

if ($paged == 0)
  $offset = 0;
else
  $offset = ($paged - 1) * 6;

三項演算子を使用してこれを短く書くこともできますが、上記のifステートメントの方が読みやすいと思います。

$offset = ($paged == 0) ? 0 : ($paged - 1) * 6;
于 2012-06-18T15:14:32.547 に答える