Completed
Push — add/comment-likes ( c8c129 )
by
unknown
09:03
created

comment-likes.php ➔ comment_like_button()   B

Complexity

Conditions 5
Paths 4

Size

Total Lines 24
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 5
eloc 13
nc 4
nop 2
dl 0
loc 24
rs 8.5125
c 0
b 0
f 0
1
<?php
2
3
function comment_like_button( $comment_content = '', $comment_object = false ) {
4
	global $comment;
5
6
	// Get the comment ID
7
	$comment_id = get_comment_ID();
8
	if ( empty( $comment_id ) && !empty( $comment_object->comment_ID ) )
9
		$comment_id = $comment_object->comment_ID;
10
11
	// Bail if comment is empty
12
	if ( empty( $comment_content ) || empty( $comment_id ) ) {
13
		return $comment_content;
14
	}
15
16
	// Build the HTML for the comment like button itself
17
	$html[] = "\n";
0 ignored issues
show
Coding Style Comprehensibility introduced by
$html was never initialized. Although not strictly required by PHP, it is generally a good practice to add $html = array(); before regardless.

Adding an explicit array definition is generally preferable to implicit array definition as it guarantees a stable state of the code.

Let’s take a look at an example:

foreach ($collection as $item) {
    $myArray['foo'] = $item->getFoo();

    if ($item->hasBar()) {
        $myArray['bar'] = $item->getBar();
    }

    // do something with $myArray
}

As you can see in this example, the array $myArray is initialized the first time when the foreach loop is entered. You can also see that the value of the bar key is only written conditionally; thus, its value might result from a previous iteration.

This might or might not be intended. To make your intention clear, your code more readible and to avoid accidental bugs, we recommend to add an explicit initialization $myArray = array() either outside or inside the foreach loop.

Loading history...
18
	$html[] =	'<p style="min-height: 55px" id="comment-like-' . esc_attr( $comment_id ) . '" data-liked=' . 'true' . '" class="comment-likes ' . 'liked' . '">';
19
	$html[] = 'Loading iframe...';
20
	$html[] =	'</p>';
21
22
	// Filter and finalize the like button
23
	$like_button = apply_filters( 'comment_like_button', implode( '', $html ), 'liked' );
24
25
	return $comment_content . $like_button;
26
}
27
28
add_filter( 'comment_text', 'comment_like_button', 12, 2 );
29
wp_enqueue_script( 'jetpack-comment-likes', plugins_url( '_inc/comment-likes.js', JETPACK__PLUGIN_FILE ), array(), JETPACK__VERSION );
30