質問編集履歴
8
文章を一部訂正致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
###実現したいこと
|
2
2
|
WordPressのループでリストがいくつか出力されるとき
|
3
3
|
➀指定のリストを「ランダム番目」に挿入したい。
|
4
|
-
➁他のリストを「ランダム番目以外」に置きたい。
|
4
|
+
➁他のリストを「ランダム番目以外」にループ順に置きたい。
|
5
5
|
➂リストのクラス名と位置を合わせたい。
|
6
6
|
と考えています。
|
7
7
|
###例
|
@@ -21,7 +21,7 @@
|
|
21
21
|
|
22
22
|
という風に、
|
23
23
|
➀``<li>special<li>``のリストを「``$pos``番目」に挿入したい。
|
24
|
-
➁他のリストを「``$pos``番目以外」に置きたい。
|
24
|
+
➁他のリストを「``$pos``番目以外」にループ順に置きたい。
|
25
25
|
➂リストのクラス名と位置を合わせたい。
|
26
26
|
と考えています。
|
27
27
|
|
7
文章を一部訂正致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,10 +1,11 @@
|
|
1
|
-
指定リストをランダムな位置に挿入する方法について教えて下さい。
|
2
|
-
|
3
1
|
###実現したいこと
|
4
|
-
WordPressのループでリストがいくつか出力されるとき
|
2
|
+
WordPressのループでリストがいくつか出力されるとき
|
5
|
-
|
3
|
+
➀指定のリストを「ランダム番目」に挿入したい。
|
4
|
+
➁他のリストを「ランダム番目以外」に置きたい。
|
5
|
+
➂リストのクラス名と位置を合わせたい。
|
6
|
+
と考えています。
|
6
7
|
###例
|
7
|
-
たとえば
|
8
|
+
たとえば後述する「試したソースコード」では``'posts_per_page' => 3``として3つのリストが出力されます。そして、``$pos = $hash[$key];``として``$pos``には1か3が入るわけですが、
|
8
9
|
|
9
10
|
もし``$pos``が1ならこう出力↓して、
|
10
11
|
<li class="no-0">A</li>
|
@@ -18,15 +19,16 @@
|
|
18
19
|
<li class="no-2">C</li>
|
19
20
|
<li class="no-3">special</li>
|
20
21
|
|
22
|
+
という風に、
|
21
|
-
|
23
|
+
➀``<li>special<li>``のリストを「``$pos``番目」に挿入したい。
|
22
|
-
|
24
|
+
➁他のリストを「``$pos``番目以外」に置きたい。
|
25
|
+
➂リストのクラス名と位置を合わせたい。
|
26
|
+
と考えています。
|
23
27
|
|
24
28
|
|
25
29
|
###試したソースコード
|
26
|
-
そのために考えた
|
30
|
+
そのために考えたのがこちらですが、どのような修正が必要になりますでしょうか?
|
27
31
|
|
28
|
-
|
29
|
-
|
30
32
|
```php
|
31
33
|
<?php
|
32
34
|
// リスト数
|
@@ -63,9 +65,6 @@
|
|
63
65
|
|
64
66
|
<?php endif; ?>
|
65
67
|
```
|
66
|
-
|
68
|
+
尚、ランダムな位置は「指定数列(``$hash = array('1', '3');``)」のどれかで、この数列に奇数だとかのルールはなく、いろいろ考えられます。
|
67
69
|
|
68
|
-
つまり上述した例にあるように、``$pos``が1ならspecialのクラスを1にし、さらに他のABCのクラスを1以外で順番通りに付ける。という点が難しいです。
|
69
|
-
|
70
|
-
これを解決するためには、どのようなソースコードの修正や、考え方が必要になりますでしょうか?
|
71
70
|
アドバイス宜しくお願い致します。
|
6
誤字を訂正致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
指定リストをランダムな位置に挿入する方法について教えて下さい。
|
2
2
|
|
3
3
|
###実現したいこと
|
4
|
-
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``のリストを
|
4
|
+
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``のリストを「``$pos``番目」に挿入し、他のリストを「``$pos``番目以外」に置きたいです。
|
5
5
|
|
6
6
|
###例
|
7
7
|
たとえば下記のソースコードでは``'posts_per_page' => 3``として3つのリストが出力されます。そして、``$pos = $hash[$key];``として``$pos``には1か3が入るわけですが、
|
5
文章を一部訂正致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
指定リストをランダムな位置に挿入する方法について教えて下さい。
|
2
2
|
|
3
3
|
###実現したいこと
|
4
|
-
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``を、「``$pos``番目」に挿入したいです。
|
4
|
+
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``のリストを、「``$pos``番目」に挿入し、他のリストを「``$pos``番目以外」に置きたいです。
|
5
5
|
|
6
6
|
###例
|
7
7
|
たとえば下記のソースコードでは``'posts_per_page' => 3``として3つのリストが出力されます。そして、``$pos = $hash[$key];``として``$pos``には1か3が入るわけですが、
|
@@ -18,7 +18,7 @@
|
|
18
18
|
<li class="no-2">C</li>
|
19
19
|
<li class="no-3">special</li>
|
20
20
|
|
21
|
-
という
|
21
|
+
という風に、``<li>special<li>``のリストを、「``$pos``番目」に挿入し、他のリストを「``$pos``番目以外」に置きたいと考えています。
|
22
22
|
(ABCは順番通りで、specialだけランダムです。)
|
23
23
|
|
24
24
|
|
4
文章を一部訂正致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
<li class="no-2">C</li>
|
19
19
|
<li class="no-3">special</li>
|
20
20
|
|
21
|
-
というの
|
21
|
+
というの風に、``<li>special<li>``を、「``$pos``番目」に挿入したいと考えています。
|
22
22
|
(ABCは順番通りで、specialだけランダムです。)
|
23
23
|
|
24
24
|
|
3
文章を一部訂正致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
指定リストをランダムな位置に挿入する方法について教えて下さい。
|
2
2
|
|
3
3
|
###実現したいこと
|
4
|
-
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``
|
4
|
+
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``を、「``$pos``番目」に挿入したいです。
|
5
5
|
|
6
6
|
###例
|
7
7
|
たとえば下記のソースコードでは``'posts_per_page' => 3``として3つのリストが出力されます。そして、``$pos = $hash[$key];``として``$pos``には1か3が入るわけですが、
|
@@ -18,7 +18,7 @@
|
|
18
18
|
<li class="no-2">C</li>
|
19
19
|
<li class="no-3">special</li>
|
20
20
|
|
21
|
-
というイメージです。
|
21
|
+
というのが、``<li>special<li>``を、「``$pos``番目」に挿入というイメージです。
|
22
22
|
(ABCは順番通りで、specialだけランダムです。)
|
23
23
|
|
24
24
|
|
2
質問内容を明確にすべく、文章を一部訂正致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,25 +1,32 @@
|
|
1
1
|
指定リストをランダムな位置に挿入する方法について教えて下さい。
|
2
2
|
|
3
3
|
###実現したいこと
|
4
|
-
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``だけを、「``$pos``番目」に挿入したい
|
4
|
+
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``だけを、「``$pos``番目」に挿入したいです。
|
5
5
|
|
6
|
+
###例
|
6
|
-
たとえば下記のソースコードでは``'posts_per_page' => 3``として3つのリストが出力されます
|
7
|
+
たとえば下記のソースコードでは``'posts_per_page' => 3``として3つのリストが出力されます。そして、``$pos = $hash[$key];``として``$pos``には1か3が入るわけですが、
|
7
8
|
|
8
|
-
|
9
|
+
もし``$pos``が1ならこう出力↓して、
|
9
10
|
<li class="no-0">A</li>
|
10
11
|
<li class="no-1">special</li>
|
11
12
|
<li class="no-2">B</li>
|
12
13
|
<li class="no-3">C</li>
|
14
|
+
|
13
|
-
|
15
|
+
もし``$pos``が3ならこう出力↓する。
|
14
16
|
<li class="no-0">A</li>
|
15
17
|
<li class="no-1">B</li>
|
16
18
|
<li class="no-2">C</li>
|
17
19
|
<li class="no-3">special</li>
|
20
|
+
|
18
|
-
と
|
21
|
+
というイメージです。
|
19
22
|
(ABCは順番通りで、specialだけランダムです。)
|
23
|
+
|
24
|
+
|
20
25
|
###試したソースコード
|
21
|
-
そのために考えたコードがこちらです
|
26
|
+
そのために考えたコードがこちらです。
|
22
27
|
|
28
|
+
|
29
|
+
|
23
30
|
```php
|
24
31
|
<?php
|
25
32
|
// リスト数
|
@@ -56,7 +63,9 @@
|
|
56
63
|
|
57
64
|
<?php endif; ?>
|
58
65
|
```
|
59
|
-
|
66
|
+
特に難航している点としましては、**ランダムな位置とクラス名を調整する点**です。
|
60
67
|
|
68
|
+
つまり上述した例にあるように、``$pos``が1ならspecialのクラスを1にし、さらに他のABCのクラスを1以外で順番通りに付ける。という点が難しいです。
|
69
|
+
|
61
|
-
こ
|
70
|
+
これを解決するためには、どのようなソースコードの修正や、考え方が必要になりますでしょうか?
|
62
71
|
アドバイス宜しくお願い致します。
|
1
言い回しや用語を部分的に変更致しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
指定リストをランダムな位置に挿入する方法について教えて下さい。
|
2
2
|
|
3
3
|
###実現したいこと
|
4
|
-
WordPressでリストがいくつか出力されるとき、``<li>special<li>``だけを、「``$pos``番目」に挿入したいと思っています。
|
4
|
+
WordPressのループでリストがいくつか出力されるとき、``<li>special<li>``だけを、「``$pos``番目」に挿入したいと思っています。
|
5
5
|
|
6
|
-
たとえば下記のソースコードでは``'posts_per_page' => 3``として3つのリストが出力されるので
|
6
|
+
たとえば下記のソースコードでは``'posts_per_page' => 3``として3つのリストが出力されますが、``$pos = $hash[$key];``として1か3が入るので、出力されるリストの1番目か3番目のいずれかに``<li>special<li>``を挿入したい。ということです。
|
7
7
|
|
8
8
|
つまり結果的に
|
9
|
-
<li class="no-0">
|
9
|
+
<li class="no-0">A</li>
|
10
10
|
<li class="no-1">special</li>
|
11
|
-
<li class="no-2">
|
11
|
+
<li class="no-2">B</li>
|
12
|
-
<li class="no-3">
|
12
|
+
<li class="no-3">C</li>
|
13
13
|
となったり
|
14
|
-
<li class="no-0">
|
14
|
+
<li class="no-0">A</li>
|
15
|
-
<li class="no-1">
|
15
|
+
<li class="no-1">B</li>
|
16
|
-
<li class="no-2">
|
16
|
+
<li class="no-2">C</li>
|
17
17
|
<li class="no-3">special</li>
|
18
18
|
となったりさせたいイメージです。
|
19
19
|
(ABCは順番通りで、specialだけランダムです。)
|
@@ -46,7 +46,7 @@
|
|
46
46
|
<?php the_title(); ?>
|
47
47
|
</li>
|
48
48
|
|
49
|
-
<?php if ($cnt++ === $pos) : ?>
|
49
|
+
<?php if ($cnt++ === $pos) : // ランダムな位置にspesialを挿入 ?>
|
50
50
|
<li class="no-<?= $num++; ?>">
|
51
51
|
special
|
52
52
|
</li>
|
@@ -56,7 +56,7 @@
|
|
56
56
|
|
57
57
|
<?php endif; ?>
|
58
58
|
```
|
59
|
-
specialの挿入位置が数字の範囲ならば``$pos = rand(0, 3);``とすればいいのですが、難しいポイントは``$pos``が``$hash = array('1', '3');``など指定数列のどれかという風にとびとびの値で指定されている点です。(例では1と3ですが数列に奇数とかそういうルールはなく色々な値が入ります。)
|
59
|
+
もし``<li>special<li>``の挿入位置が数字の範囲ならば``$pos = rand(0, 3);``とすればいいのですが、難しいポイントは``$pos``が``$hash = array('1', '3');``など指定数列のどれかという風にとびとびの値で指定されている点です。(例では1と3ですが数列に奇数とかそういうルールはなく色々な値が入ります。)
|
60
60
|
|
61
|
-
このためには、どのようなソースコードの修正や、考え方が必要になりますでしょうか?
|
61
|
+
このポイントを解決するためには、どのようなソースコードの修正や、考え方が必要になりますでしょうか?
|
62
62
|
アドバイス宜しくお願い致します。
|