回答編集履歴
3
コメント追加
answer
CHANGED
@@ -12,6 +12,16 @@
|
|
12
12
|
```php
|
13
13
|
// function.php
|
14
14
|
|
15
|
+
/**
|
16
|
+
* アフィリエイト用タグ出力
|
17
|
+
*
|
18
|
+
* ◎ショートコード
|
19
|
+
* [affiliate 属性名='アフィリエイトID']
|
20
|
+
* [affiliate 'アフィリエイトID']
|
21
|
+
*
|
22
|
+
* @param array $args array('アフィリエイトID') or array('vc_mylinkbox_id' => 'アフィリエイトID')
|
23
|
+
* @return string アフィリエイト用HTML文字列
|
24
|
+
*/
|
15
25
|
add_shortcode('affiliate', function ($args = [])
|
16
26
|
{
|
17
27
|
if (empty($args)) {
|
@@ -19,9 +29,13 @@
|
|
19
29
|
}
|
20
30
|
|
21
31
|
$keys = array_keys($args);
|
32
|
+
|
33
|
+
// 引数にアフィリエイト属性名(連想配列キー)がない場合「'vc_mylinkbox_id'」を補完
|
22
34
|
$attr = is_numeric($keys[0]) ? 'vc_mylinkbox_id' : $keys[0];
|
23
|
-
$id = array_shift($args);
|
24
35
|
|
36
|
+
// アフィリエイトID
|
37
|
+
$id = array_shift($args);
|
38
|
+
|
25
39
|
return '<div '. $attr .'="'. $id .'"></div>';
|
26
40
|
});
|
27
41
|
```
|
2
バグ修正2:return の $args も要変更だった
answer
CHANGED
@@ -20,8 +20,9 @@
|
|
20
20
|
|
21
21
|
$keys = array_keys($args);
|
22
22
|
$attr = is_numeric($keys[0]) ? 'vc_mylinkbox_id' : $keys[0];
|
23
|
+
$id = array_shift($args);
|
23
24
|
|
24
|
-
return '<div '. $attr .'="'. $
|
25
|
+
return '<div '. $attr .'="'. $id .'"></div>';
|
25
26
|
});
|
26
27
|
```
|
27
28
|
|
1
バグ修正:array_keys($args[0]) → array_keys($args)
answer
CHANGED
@@ -18,7 +18,7 @@
|
|
18
18
|
return '';
|
19
19
|
}
|
20
20
|
|
21
|
-
$keys = array_keys($args
|
21
|
+
$keys = array_keys($args);
|
22
22
|
$attr = is_numeric($keys[0]) ? 'vc_mylinkbox_id' : $keys[0];
|
23
23
|
|
24
24
|
return '<div '. $attr .'="'. $args[0][$attr] .'"></div>';
|