$list_IP_entry
array(239) {
  [0]=>
  string(28) "157.55.39.10, 108.162.246.21"
  [1]=>
  string(28) "185.191.171.36, 172.70.34.52"
  [2]=>
  string(27) "66.249.64.142, 172.68.65.88"
  [3]=>
  string(28) "171.241.63.92, 172.70.147.96"
  [4]=>
  string(29) "114.119.129.82, 172.70.143.89"
  [5]=>
  string(29) "114.119.129.82, 172.70.147.98"
  [6]=>
  string(31) "113.173.202.213, 172.70.142.204"
  [7]=>
  string(28) "185.191.171.37, 172.70.34.40"
  [8]=>
  string(30) "157.55.39.150, 162.158.146.202"
  [9]=>
  string(30) "114.119.129.7, 162.158.165.128"
  [10]=>
  string(28) "88.198.25.244, 162.158.90.46"
  [11]=>
  string(25) "27.3.0.13, 162.158.167.18"
  [12]=>
  string(27) "66.249.73.24, 172.69.71.168"
  [13]=>
  string(29) "207.46.13.130, 108.162.246.21"
  [14]=>
  string(30) "114.119.129.74, 172.70.188.178"
  [15]=>
  string(27) "162.55.86.61, 162.158.90.20"
  [16]=>
  string(29) "207.46.13.146, 108.162.246.21"
  [17]=>
  string(29) "185.191.171.23, 172.69.63.133"
  [18]=>
  string(30) "103.131.71.159, 172.70.188.164"
  [19]=>
  string(30) "114.119.130.29, 172.70.188.142"
  [20]=>
  string(26) "40.77.167.65, 172.70.34.40"
  [21]=>
  string(30) "114.119.129.208, 172.69.22.106"
  [22]=>
  string(26) "66.249.73.7, 172.69.71.168"
  [23]=>
  string(28) "87.250.224.158, 172.68.10.14"
  [24]=>
  string(27) "66.249.73.26, 172.69.71.168"
  [25]=>
  string(29) "185.191.171.42, 172.70.34.134"
  [26]=>
  string(28) "88.198.25.244, 162.158.91.14"
  [27]=>
  string(26) "40.77.167.65, 172.70.34.41"
  [28]=>
  string(29) "103.131.71.97, 172.70.188.165"
  [29]=>
  string(28) "162.55.86.61, 162.158.89.212"
  [30]=>
  string(28) "87.250.224.135, 172.68.10.15"
  [31]=>
  string(54) "2405:4802:6063:aa80:18e0:a18b:41d6:3cf6, 172.70.143.90"
  [32]=>
  string(26) "40.77.167.72, 172.68.65.89"
  [33]=>
  string(30) "114.119.129.233, 172.70.143.76"
  [34]=>
  string(28) "207.46.13.65, 108.162.246.22"
  [35]=>
  string(31) "168.119.140.252, 162.158.90.173"
  [36]=>
  string(29) "82.80.230.228, 162.158.94.239"
  [37]=>
  string(30) "114.119.129.233, 172.70.147.99"
  [38]=>
  string(29) "171.225.252.143, 172.70.189.2"
  [39]=>
  string(30) "113.190.232.130, 172.70.142.55"
  [40]=>
  string(55) "2001:ee0:56b7:49c0:a074:a901:5b2c:956f, 162.158.178.185"
  [41]=>
  string(53) "2402:800:63b6:f82f:65ad:bf4:dd6b:14aa, 162.158.165.79"
  [42]=>
  string(29) "185.191.171.19, 172.70.34.157"
  [43]=>
  string(32) "114.119.129.218, 162.158.165.105"
  [44]=>
  string(29) "207.46.13.131, 108.162.246.22"
  [45]=>
  string(29) "103.131.71.99, 172.70.147.119"
  [46]=>
  string(29) "88.198.25.244, 162.158.94.103"
  [47]=>
  string(30) "114.119.129.218, 172.70.147.15"
  [48]=>
  string(29) "103.131.71.74, 172.70.142.185"
  [49]=>
  string(29) "113.166.84.190, 172.68.144.68"
  [50]=>
  string(27) "95.108.213.77, 172.68.10.15"
  [51]=>
  string(30) "157.55.39.230, 162.158.255.249"
  [52]=>
  string(28) "168.119.3.58, 141.101.104.90"
  [53]=>
  string(28) "162.55.86.61, 162.158.94.155"
  [54]=>
  string(30) "114.119.129.235, 172.70.143.90"
  [55]=>
  string(29) "157.55.39.230, 108.162.246.22"
  [56]=>
  string(31) "114.119.129.229, 172.70.147.155"
  [57]=>
  string(30) "103.131.71.192, 172.70.188.165"
  [58]=>
  string(28) "27.71.219.37, 162.158.165.23"
  [59]=>
  string(27) "87.250.224.36, 172.68.10.15"
  [60]=>
  string(32) "114.119.129.208, 162.158.165.153"
  [61]=>
  string(28) "40.77.167.10, 172.70.134.227"
  [62]=>
  string(28) "40.77.167.66, 172.70.134.227"
  [63]=>
  string(29) "88.198.25.244, 162.158.90.215"
  [64]=>
  string(30) "103.131.71.105, 172.70.189.148"
  [65]=>
  string(28) "207.46.13.19, 162.158.146.37"
  [66]=>
  string(29) "185.191.171.21, 172.70.175.32"
  [67]=>
  string(31) "114.119.129.225, 162.158.166.46"
  [68]=>
  string(29) "185.191.171.13, 172.70.34.135"
  [69]=>
  string(30) "103.131.71.191, 172.70.189.148"
  [70]=>
  string(28) "162.55.86.61, 162.158.88.223"
  [71]=>
  string(28) "207.46.13.19, 108.162.246.22"
  [72]=>
  string(29) "114.119.130.29, 172.70.92.249"
  [73]=>
  string(28) "88.99.150.47, 162.158.94.111"
  [74]=>
  string(30) "103.131.71.230, 172.70.142.185"
  [75]=>
  string(25) "77.88.5.211, 172.68.10.15"
  [76]=>
  string(30) "114.119.129.225, 172.70.189.90"
  [77]=>
  string(30) "103.131.71.143, 172.70.147.119"
  [78]=>
  string(28) "162.55.86.61, 162.158.92.167"
  [79]=>
  string(29) "114.119.129.22, 172.70.188.37"
  [80]=>
  string(30) "103.131.71.138, 172.70.147.119"
  [81]=>
  string(29) "88.198.25.244, 162.158.90.119"
  [82]=>
  string(26) "40.77.167.40, 172.70.34.41"
  [83]=>
  string(28) "40.77.167.40, 172.70.134.227"
  [84]=>
  string(28) "162.55.86.61, 198.41.242.155"
  [85]=>
  string(30) "114.119.129.208, 172.70.147.53"
  [86]=>
  string(28) "40.77.167.40, 172.70.175.166"
  [87]=>
  string(29) "185.191.171.34, 172.70.175.28"
  [88]=>
  string(28) "40.77.167.40, 162.158.78.205"
  [89]=>
  string(28) "185.191.171.1, 172.70.175.28"
  [90]=>
  string(30) "103.131.71.197, 172.70.142.185"
  [91]=>
  string(29) "114.119.129.218, 172.70.93.29"
  [92]=>
  string(29) "157.55.39.109, 162.158.146.37"
  [93]=>
  string(28) "162.55.86.61, 162.158.90.131"
  [94]=>
  string(25) "5.45.207.87, 172.68.10.15"
  [95]=>
  string(29) "103.131.71.88, 172.70.142.185"
  [96]=>
  string(32) "114.119.129.208, 162.158.162.215"
  [97]=>
  string(29) "207.46.13.113, 162.158.146.37"
  [98]=>
  string(29) "66.249.69.208, 172.70.131.160"
  [99]=>
  string(30) "113.177.172.187, 172.70.189.94"
  [100]=>
  string(30) "103.131.71.131, 172.70.142.185"
  [101]=>
  string(28) "40.77.167.32, 172.70.134.227"
  [102]=>
  string(32) "114.119.150.226, 162.158.163.116"
  [103]=>
  string(29) "103.131.71.98, 172.70.189.148"
  [104]=>
  string(28) "87.250.224.178, 172.68.10.15"
  [105]=>
  string(28) "162.55.86.61, 172.70.242.165"
  [106]=>
  string(29) "207.46.13.210, 162.158.146.37"
  [107]=>
  string(30) "185.191.171.34, 162.158.78.183"
  [108]=>
  string(30) "103.131.71.176, 172.70.147.119"
  [109]=>
  string(29) "207.46.13.210, 108.162.246.22"
  [110]=>
  string(30) "185.191.171.45, 172.70.134.173"
  [111]=>
  string(31) "103.131.71.193, 162.158.178.138"
  [112]=>
  string(30) "114.119.159.135, 172.70.189.38"
  [113]=>
  string(27) "162.55.86.61, 172.70.251.86"
  [114]=>
  string(27) "5.255.253.176, 172.68.10.15"
  [115]=>
  string(30) "103.131.71.67, 162.158.178.138"
  [116]=>
  string(28) "162.55.86.61, 172.70.246.131"
  [117]=>
  string(28) "114.119.150.22, 172.70.93.11"
  [118]=>
  string(31) "103.131.71.186, 162.158.178.138"
  [119]=>
  string(28) "40.77.167.59, 172.70.175.186"
  [120]=>
  string(28) "66.249.64.95, 172.70.175.186"
  [121]=>
  string(29) "66.249.66.192, 172.70.134.227"
  [122]=>
  string(31) "114.119.150.208, 172.70.147.165"
  [123]=>
  string(27) "162.55.86.61, 172.70.250.77"
  [124]=>
  string(31) "103.131.71.231, 162.158.178.138"
  [125]=>
  string(27) "111.225.148.18, 172.69.33.5"
  [126]=>
  string(26) "40.77.167.59, 172.70.34.41"
  [127]=>
  string(31) "114.119.144.36, 162.158.162.183"
  [128]=>
  string(28) "40.77.167.59, 172.70.134.227"
  [129]=>
  string(30) "103.131.71.59, 162.158.178.138"
  [130]=>
  string(28) "87.250.224.174, 172.68.10.15"
  [131]=>
  string(29) "185.191.171.10, 172.70.134.59"
  [132]=>
  string(28) "88.198.25.244, 172.70.246.21"
  [133]=>
  string(27) "40.77.167.59, 172.70.38.123"
  [134]=>
  string(29) "185.191.171.36, 172.70.174.75"
  [135]=>
  string(28) "40.77.167.59, 162.158.178.32"
  [136]=>
  string(29) "114.119.159.135, 172.70.93.17"
  [137]=>
  string(31) "103.131.71.172, 162.158.178.138"
  [138]=>
  string(29) "66.249.79.22, 162.158.166.155"
  [139]=>
  string(28) "40.77.167.59, 162.158.78.205"
  [140]=>
  string(29) "66.249.66.194, 172.70.134.227"
  [141]=>
  string(29) "66.249.64.176, 162.158.78.205"
  [142]=>
  string(31) "103.131.71.104, 162.158.178.138"
  [143]=>
  string(28) "162.55.86.61, 172.70.242.151"
  [144]=>
  string(29) "51.158.120.252, 162.158.50.76"
  [145]=>
  string(30) "114.119.150.208, 172.70.143.46"
  [146]=>
  string(30) "14.191.154.116, 172.70.188.147"
  [147]=>
  string(30) "114.119.150.215, 172.70.92.235"
  [148]=>
  string(26) "161.0.2.166, 172.70.230.81"
  [149]=>
  string(32) "114.119.159.135, 162.158.170.137"
  [150]=>
  string(28) "40.77.167.64, 172.70.134.227"
  [151]=>
  string(31) "114.119.150.226, 172.70.188.147"
  [152]=>
  string(27) "66.249.64.190, 172.70.34.41"
  [153]=>
  string(29) "66.249.64.176, 172.70.134.227"
  [154]=>
  string(29) "87.250.224.84, 141.101.105.13"
  [155]=>
  string(31) "103.131.71.174, 162.158.178.138"
  [156]=>
  string(31) "116.103.41.167, 162.158.178.212"
  [157]=>
  string(30) "181.177.122.232, 162.158.62.65"
  [158]=>
  string(27) "23.95.251.30, 172.70.210.51"
  [159]=>
  string(27) "23.95.251.30, 172.70.211.98"
  [160]=>
  string(25) "23.95.251.30, 172.69.34.4"
  [161]=>
  string(30) "103.131.71.78, 162.158.178.138"
  [162]=>
  string(31) "114.119.150.215, 172.70.147.200"
  [163]=>
  string(29) "95.181.238.53, 172.70.110.161"
  [164]=>
  string(29) "104.171.150.71, 172.70.110.77"
  [165]=>
  string(30) "104.171.150.71, 172.70.114.249"
  [166]=>
  string(30) "104.171.150.71, 162.158.62.127"
  [167]=>
  string(31) "193.235.141.23, 162.158.222.123"
  [168]=>
  string(29) "207.46.13.204, 108.162.246.22"
  [169]=>
  string(27) "88.99.150.47, 172.70.242.37"
  [170]=>
  string(30) "114.119.150.22, 162.158.163.44"
  [171]=>
  string(31) "103.131.71.237, 162.158.178.138"
  [172]=>
  string(30) "114.119.159.135, 172.70.143.96"
  [173]=>
  string(27) "162.55.86.61, 172.70.251.88"
  [174]=>
  string(29) "3.238.180.255, 172.70.175.168"
  [175]=>
  string(30) "185.191.171.24, 172.70.134.251"
  [176]=>
  string(31) "103.131.71.152, 162.158.178.138"
  [177]=>
  string(29) "195.201.12.243, 172.70.251.88"
  [178]=>
  string(32) "114.119.159.135, 162.158.162.151"
  [179]=>
  string(30) "125.235.239.119, 162.158.171.4"
  [180]=>
  string(30) "87.250.224.193, 172.71.102.117"
  [181]=>
  string(30) "107.152.250.184, 172.70.206.99"
  [182]=>
  string(29) "103.131.71.134, 172.68.253.35"
  [183]=>
  string(28) "207.46.13.53, 108.162.246.22"
  [184]=>
  string(30) "185.191.171.19, 172.70.174.231"
  [185]=>
  string(29) "185.191.171.36, 172.70.134.17"
  [186]=>
  string(31) "114.119.150.208, 172.70.188.247"
  [187]=>
  string(26) "1.54.95.175, 172.70.147.79"
  [188]=>
  string(29) "114.119.150.22, 172.70.142.81"
  [189]=>
  string(29) "103.131.71.189, 172.68.253.35"
  [190]=>
  string(28) "162.55.86.61, 162.158.89.134"
  [191]=>
  string(31) "114.119.144.36, 162.158.163.156"
  [192]=>
  string(29) "87.250.224.84, 172.71.102.117"
  [193]=>
  string(27) "66.249.66.1, 172.70.175.186"
  [194]=>
  string(28) "207.46.13.43, 108.162.246.22"
  [195]=>
  string(29) "103.131.71.166, 172.68.253.35"
  [196]=>
  string(31) "114.119.150.208, 162.158.171.16"
  [197]=>
  string(30) "185.191.171.35, 172.70.174.147"
  [198]=>
  string(31) "114.119.159.135, 162.158.171.16"
  [199]=>
  string(29) "114.119.150.22, 172.70.189.64"
  [200]=>
  string(30) "114.119.150.226, 172.70.147.15"
  [201]=>
  string(29) "103.131.71.145, 172.68.253.35"
  [202]=>
  string(28) "95.108.213.64, 172.71.94.159"
  [203]=>
  string(28) "114.119.144.36, 172.70.93.39"
  [204]=>
  string(28) "207.46.13.41, 162.158.146.37"
  [205]=>
  string(28) "183.91.7.232, 172.68.253.107"
  [206]=>
  string(29) "103.131.71.228, 172.68.253.35"
  [207]=>
  string(29) "114.119.144.36, 172.70.147.15"
  [208]=>
  string(31) "114.119.150.22, 162.158.170.173"
  [209]=>
  string(30) "185.191.171.39, 172.70.174.231"
  [210]=>
  string(29) "173.231.60.196, 172.69.42.123"
  [211]=>
  string(29) "103.131.71.104, 172.68.253.35"
  [212]=>
  string(29) "185.191.171.42, 172.70.135.58"
  [213]=>
  string(27) "162.55.86.61, 172.68.50.205"
  [214]=>
  string(29) "103.131.71.103, 172.68.253.35"
  [215]=>
  string(29) "114.119.144.36, 172.70.92.219"
  [216]=>
  string(28) "207.46.13.17, 162.158.146.37"
  [217]=>
  string(30) "17.121.115.251, 172.70.214.209"
  [218]=>
  string(30) "114.119.150.22, 162.158.162.45"
  [219]=>
  string(29) "66.249.66.223, 172.70.134.227"
  [220]=>
  string(27) "66.249.66.192, 172.70.34.41"
  [221]=>
  string(29) "66.249.66.222, 172.70.134.227"
  [222]=>
  string(27) "162.55.86.61, 172.68.51.128"
  [223]=>
  string(30) "93.158.161.34, 162.158.222.163"
  [224]=>
  string(31) "114.119.150.208, 162.158.163.10"
  [225]=>
  string(31) "103.131.71.191, 162.158.178.148"
  [226]=>
  string(30) "114.119.150.226, 172.70.188.25"
  [227]=>
  string(26) "66.249.79.1, 172.69.22.145"
  [228]=>
  string(31) "103.131.71.190, 162.158.178.148"
  [229]=>
  string(30) "185.191.171.22, 172.70.134.251"
  [230]=>
  string(30) "114.119.150.215, 172.70.188.25"
  [231]=>
  string(29) "114.119.150.22, 172.70.92.219"
  [232]=>
  string(30) "103.131.71.56, 162.158.178.148"
  [233]=>
  string(27) "162.55.86.61, 172.68.50.131"
  [234]=>
  string(30) "114.119.150.208, 172.70.189.34"
  [235]=>
  string(30) "116.100.115.112, 172.68.254.10"
  [236]=>
  string(31) "103.131.71.182, 162.158.178.148"
  [237]=>
  string(30) "114.119.150.208, 172.70.147.15"
  [238]=>
  string(25) "3.238.98.39, 172.70.135.2"
}
Cách tao shortcode wordpress mới nhất 2021

Cách tao shortcode wordpress mới nhất 2021

Bài viết sau đây ChuanSeoWeb sẽ hướng dẫn bạn cách tao shortcode wordpress, Tạo shortcode wordpress hiển thị các bài viết liên quan cùng chuyên mục với bài viết hiện tại. Shortcode trong wordpress là một đoạn mã ngắn. Đoạn mã ngắn này bạn có thể truyền tham số hoặc lấy theo mặc định tùy theo cách bạn viết để sử dụng. Đoạn mã ngắn sẽ thực thi việc lấy dữ liệu và trả về html hiển thị cho bạn. Bạn có thể chèn shortcode vào wordpress ở nhiều nơi. Đa phần các trường trong wordpress có hỗ trợ xử lý shortcode như trường nhập văn bản, trường nhập shortcode,… Một số trường không trợ như exceprt trong bài viết, exceprt trong sản phẩm, widget. Sau đây mời bạn theo dõi cách tao shortcode wordpress dưới đây. Bài viết sau thuộc chuyên mục WordPress Development

Có thể bạn quan tâm: Cách thêm widget cho wordpress mới nhất 2021

Shortcode wordpress là gì

Như mình đã nói bên trên. Shortcode là một đoạn mã ngắn giúp xử lý lấy thông tin bạn cần, có thể truyền tham số để linh động trong việc lấy dữ liệu. Hoặc không cần tham số tùy theo mục đích sử dụng của bạn. Và khi tạo shortcode bạn thường trả về đoạn mã html để hiển thị cho người dùng xem.

Để khi hiển thị html được đẹp thì bạn cần css cho đoạn html của shortcode hiển thị nó. Css này bạn cần viết sẵn ở file css của theme, css không liên quan đến shortcode bạn viết. Để khi hiển thị ra html là có css hiển thị đẹp lên luôn. Nghĩa là css sẽ luôn tải trong theme ra.

Việc sử dụng shortcode hiện nay khá phổ biến. Nếu bạn là một developer thì việc sử dụng nó cũng tương đối dễ. Nên việc bạn biết cách tao shortcode wordpress là cần thiết. Tuy nhiên với khách hàng bình thường thì việc chèn shortcode vào wordpress nhiều sẽ hơi rối nên trong theme bạn nên hạn chế dùng shortcode càng ít càng tốt. Nên chuyển sang các hướng khác cho trực quan với người dùng hơn.

Cách tao shortcode wordpress

Tạo shortcode cho wordpress không sử dụng tham số

Để thêm shortcode trong wordpress bạn dùng hàm add_shortcode. Hàm này có 2 tham số. Tham số đầu là tên shortcode này để bạn sử dụng trong editor, widget, … Tham số thứ 2 là tên của hàm xử lý shortcode hàm này viết trong file php trong theme.

Ví dụ:

add_shortcode( 'csw_recent_post', 'csw_recent_post_fc' );

Có thể bạn quan tâm: Code hiển thị sản phẩm theo category mới nhất

Ở đây csw_recent_post là tên của shortcode bạn sử dụng trong khi thêm vào editor dạng:

Hàm _e trong wordpress

Hàm _e trong wordpress

3 Tháng Mười Một, 2021

Hàm _e trong wordpress là một hàm khi bạn phát triển theme hay plugin nên biết. Hàm này có tác dụng in ra chuỗi và chuỗi này có thể được dịch qua ngôn ngữ khác.

Hàm get_post_meta trong wordpress và các ví dụ

Hàm get_post_meta trong wordpress và các ví dụ

1 Tháng Mười Một, 2021

Hàm get_post_meta trong wordpress là hàm để lấy giá trị meta value theo meta key của một bài viết, sản phẩm, hay bất kỳ một custom post type nào. Bạn cần có post id và meta key

Cách thêm sidebar cho wordpress không dùng plugin

Cách thêm sidebar cho wordpress không dùng plugin

7 Tháng Mười, 2021

Bài viết sau mình sẽ hướng dẫn bạn cách thêm sidebar cho wordpress mà không cần dùng đến plugin. Bạn chỉ cần thêm một chút code đăng ký một sidebar trong wordpress

Hàm mktime trong php

Hàm mktime trong php

15 Tháng Chín, 2021

Việc hiểu về các hàm thời gian trong php và hàm mktime trong php sẽ giúp bạn dễ dàng hơn khi làm việc liên quan tới thời gian. Bài viết sau đây mình sẽ giới thiệu bạn cách dùng hàm mktime trong php

wp_head trong wordpress có tác dụng gì

wp_head trong wordpress có tác dụng gì

14 Tháng Chín, 2021

wp_head trong wordpress là một hook cho phép bạn thêm các tính năng tùy chỉnh vào cặp thẻ trong website. Với hook wp_head bạn có thể dễ dàng thêm các thẻ meta, link CDN css, hay thêm đoạn mã javascript vào cặp thẻ .

. csw_recent_post_fc ở đây là hàm xử lý lấy ra các bài viết cùng chuyên mục với bài viết hiện tại. Ở đây mình sẽ lấy ra 5 bài viết cùng chuyên mục với bài viết hiện tại. Sau đây là đoạn code của hàm csw_recent_post_fc:

function csw_recent_post_fc() {
      
        
        $cat = get_the_category();
        if( $cat ){
            $agrs_cat = array(
                'cat' => $cat[0]->term_id
            );  
        }else{
            $agrs_cat = array();
        }
        $args_base=[
            'post_type' => 'post',
            'posts_per_page' => 5,
            'order' => 'desc',
        ];
        $args = array_merge($args_base, $agrs_cat);

        $blog = new \WP_Query($args);
            $html = "";
            $html .= "<div class='csw-recent-post'>";
            if($blog->have_posts()) : while($blog->have_posts()) : $blog->the_post();
                $thumbnail_url = wp_get_attachment_image_url(get_post_thumbnail_id() , 'full' );
                $html .= '<div class="csw-item">';

                    if($thumbnail_url) {
                        $html .= '<div class="csw-media">';
                            $html .= '<a href="'. get_the_permalink() .'">';
                                $html .= '<img alt="'.get_the_title().'" src="'.esc_url($thumbnail_url).'" >';
                            $html .= '</a>';
                        $html .= '</div>';
                    }
                    

                    $html .= '<div class="csw-content">';
                        $html .='<div class="post-title">';
                            $html .='<h2 class="post-title">';
                                $html .= '<a href="'.get_the_permalink().'">'.get_the_title().'</a>';
                            $html .='</h2>';
                        $html .= '</div>';

                        $html .='<div class="post-time">';
                            $html .= '<span>'.get_the_time( get_option( 'date_format' )).'</span>';
                        $html .= '</div>';

                        $html .='<div class="post-excerpt">';
                            $html .= '<p>'.get_the_excerpt().'</p>';
                        $html .= '</div>';

                        $html .='<div class="reade-more">';
                            $html .= '<a href="'.get_the_permalink().'">'.esc_html('Đọc thêm', 'ntl-csw').'</a>';
                        $html .= '</div>';
                    $html .= '</div>';

                $html .= '</div>';

            endwhile; endif; wp_reset_postdata();
                $html .= "</div>";
        
        return $html;
    }

Ở đoạn code trên mình lấy dữ liệu danh sách các bài viết cùng chuyên mục bài viết hiện tại.

  • get_the_category() lấy danh mục cùng với bài viết hiện tại.
  • $agrs_cat là lấy tham số id của category cùng danh mục cho vào mảng $agrs_cat.
  • $args_base là lấy tham số lấy bài viết theo tổng số lượng bài viết, lấy những bài viết mới nhất.
  • $agrs là mảng tham số khi hợp mảng $agrs_cat và $args_base để lấy bài viết cùng chuyên mục, mới nhất, số lượng 5 bài viết.
  • WP_Query($args) lấy danh sách các bài viết theo tham số $args
  • Sau đó thực hiện loop để lấy ra từng thông số của bài viết như ảnh, tiêu đề, link, excerpt của bài viết để truyền vào biến $html;
  • Sau khi đã loop hết qua các bài viết. Đã truyền hết các dữ liệu vào biến html. Thì bạn return về hàm biến $html này để hiển thị html ra ngoài trình duyệt

Khi đã hiển thị được html ra trình duyệt cho người dùng rồi bạn cần phải có chút css để cho bài viết hiển thị được đẹp hơn. Để cách tao shortcode wordpress đẹp hơn bạn cần thêm đoạn css sau vào file css:

.csw-recent-post .csw-item:not(:last-child) {
  margin-bottom: 50px;
}
.csw-recent-post .csw-item .csw-media {
  margin-bottom: 10px;
}
.csw-recent-post .csw-item .csw-content .post-title {
  font-size: 20px;
  line-height: 25px;
  color: #222;
  margin: 0 0 5px 0;
}
.csw-recent-post .csw-item .csw-content .post-title a {
  font-size: 20px;
  line-height: 25px;
  color: #222;
}
.csw-recent-post .csw-item .csw-content .post-title a:hover {
  color: #f00;
}
.csw-recent-post .csw-item .csw-content .post-time {
  margin: 0 0 10px 0;
}
.csw-recent-post .csw-item .csw-content .post-time span {
  font-size: 15px;
  line-height: 20px;
}
.csw-recent-post .csw-item .csw-content .post-excerpt {
  margin-bottom: 20px;
}
.csw-recent-post .csw-item .csw-content .post-excerpt p {
  margin: 0 0 10px 0;
  font-size: 17px;
  line-height: 24px;
  color: #666;
}
.csw-recent-post .csw-item .csw-content .reade-more a {
  font-size: 17px;
  line-height: 20px;
  font-weight: 600;
  color: #fff;
  padding: 11px 24px 12px 23px;
  display: inline-flex;
  align-items: center;
  background: #222;
}
.csw-recent-post .csw-item .csw-content .reade-more a:hover {
  background: #f00;
}
Cách tao shortcode wordpress
chèn shortcode vào wordpress và hiển thị nó ở bên ngoài trang

Để sử dụng bạn dùng đoạn shortcode sau để thêm vào widget hay vào bất kỳ đâu:

Hàm _e trong wordpress

Hàm _e trong wordpress

3 Tháng Mười Một, 2021

Hàm _e trong wordpress là một hàm khi bạn phát triển theme hay plugin nên biết. Hàm này có tác dụng in ra chuỗi và chuỗi này có thể được dịch qua ngôn ngữ khác.

Hàm get_post_meta trong wordpress và các ví dụ

Hàm get_post_meta trong wordpress và các ví dụ

1 Tháng Mười Một, 2021

Hàm get_post_meta trong wordpress là hàm để lấy giá trị meta value theo meta key của một bài viết, sản phẩm, hay bất kỳ một custom post type nào. Bạn cần có post id và meta key

Cách thêm sidebar cho wordpress không dùng plugin

Cách thêm sidebar cho wordpress không dùng plugin

7 Tháng Mười, 2021

Bài viết sau mình sẽ hướng dẫn bạn cách thêm sidebar cho wordpress mà không cần dùng đến plugin. Bạn chỉ cần thêm một chút code đăng ký một sidebar trong wordpress

Hàm mktime trong php

Hàm mktime trong php

15 Tháng Chín, 2021

Việc hiểu về các hàm thời gian trong php và hàm mktime trong php sẽ giúp bạn dễ dàng hơn khi làm việc liên quan tới thời gian. Bài viết sau đây mình sẽ giới thiệu bạn cách dùng hàm mktime trong php

wp_head trong wordpress có tác dụng gì

wp_head trong wordpress có tác dụng gì

14 Tháng Chín, 2021

wp_head trong wordpress là một hook cho phép bạn thêm các tính năng tùy chỉnh vào cặp thẻ trong website. Với hook wp_head bạn có thể dễ dàng thêm các thẻ meta, link CDN css, hay thêm đoạn mã javascript vào cặp thẻ .

. Tuy nhiên shortcode trên hoạt động đúng khi ở trong bài viết thôi. Bởi vì khi ở bên ngoài 1 bài viết thì việc lấy category hiện tại sẽ không đúng nữa. Nên bạn cần truyền các tham số cho shortcode để lấy chính xác hơn bài viết hoặc số lượng bài viết muốn lấy.

Có thể bạn quan tâm: Hiển thị bài viết cùng chuyên mục trong wordpress

Cách tao shortcode wordpress có sử dụng tham số

Bạn sử dụng tham số để lấy dữ liệu được chính xác hơn. Và lấy dữ liệu đúng như mong muốn. Dưới đây mình hướng dẫn bạn cách tao shortcode wordpress. Ở đây là truyền tham số category id bài viết muốn lấy, và tổng số lượng bài viết muốn lấy.

Bạn vẫn sử dụng hàm add_shortcode như trên:


add_shortcode( 'csw_recent_post', 'csw_recent_post_fc' );

Ở hàm csw_recent_post_fc bạn thêm các tham số vào cho nó. Cách tao shortcode wordpress có truyền thêm tham số như ví dụ sau:

function csw_recent_post_fc( $args_sc ) {

        $total = isset($args_sc['total']) ? sanitize_text_field( $args_sc['total'] ) : 5;
        $cat_id = isset($args_sc['cat_id']) ? sanitize_text_field( $args_sc['cat_id'] ) : '';
      
        $cat = get_the_category();

        if( $cat ){
            $agrs_cat = array(
                'cat' => $cat[0]->term_id
            );  
        }else{
            $agrs_cat = array();
        }

        if( $cat_id ) {
            $agrs_cat = array(
                'cat' => $cat_id
            );
        }

        $args_base=[
            'post_type' => 'post',
            'posts_per_page' => $total,
            'order' => 'desc',
        ];
        $args = array_merge($args_base, $agrs_cat);

        $blog = new \WP_Query($args);
            $html = "";
            $html .= "<div class='csw-recent-post'>";
            if($blog->have_posts()) : while($blog->have_posts()) : $blog->the_post();
                $thumbnail_url = wp_get_attachment_image_url(get_post_thumbnail_id() , 'full' );
                $html .= '<div class="csw-item">';

                    if($thumbnail_url) {
                        $html .= '<div class="csw-media">';
                            $html .= '<a href="'. get_the_permalink() .'">';
                                $html .= '<img alt="'.get_the_title().'" src="'.esc_url($thumbnail_url).'" >';
                            $html .= '</a>';
                        $html .= '</div>';
                    }
                    

                    $html .= '<div class="csw-content">';
                        $html .='<div class="post-title">';
                            $html .='<h2 class="post-title">';
                                $html .= '<a href="'.get_the_permalink().'">'.get_the_title().'</a>';
                            $html .='</h2>';
                        $html .= '</div>';

                        $html .='<div class="post-time">';
                            $html .= '<span>'.get_the_time( get_option( 'date_format' )).'</span>';
                        $html .= '</div>';

                        $html .='<div class="post-excerpt">';
                            $html .= '<p>'.get_the_excerpt().'</p>';
                        $html .= '</div>';

                        $html .='<div class="reade-more">';
                            $html .= '<a href="'.get_the_permalink().'">'.esc_html('Đọc thêm', 'ntl-csw').'</a>';
                        $html .= '</div>';
                    $html .= '</div>';

                $html .= '</div>';

            endwhile; endif; wp_reset_postdata();
                $html .= "</div>";
        
        return $html;
    }

VIệc mình thêm tham số $args_sc vào shortcode bây giờ nếu bạn vẫn dùng

Hàm _e trong wordpress

Hàm _e trong wordpress

3 Tháng Mười Một, 2021

Hàm _e trong wordpress là một hàm khi bạn phát triển theme hay plugin nên biết. Hàm này có tác dụng in ra chuỗi và chuỗi này có thể được dịch qua ngôn ngữ khác.

Hàm get_post_meta trong wordpress và các ví dụ

Hàm get_post_meta trong wordpress và các ví dụ

1 Tháng Mười Một, 2021

Hàm get_post_meta trong wordpress là hàm để lấy giá trị meta value theo meta key của một bài viết, sản phẩm, hay bất kỳ một custom post type nào. Bạn cần có post id và meta key

Cách thêm sidebar cho wordpress không dùng plugin

Cách thêm sidebar cho wordpress không dùng plugin

7 Tháng Mười, 2021

Bài viết sau mình sẽ hướng dẫn bạn cách thêm sidebar cho wordpress mà không cần dùng đến plugin. Bạn chỉ cần thêm một chút code đăng ký một sidebar trong wordpress

Hàm mktime trong php

Hàm mktime trong php

15 Tháng Chín, 2021

Việc hiểu về các hàm thời gian trong php và hàm mktime trong php sẽ giúp bạn dễ dàng hơn khi làm việc liên quan tới thời gian. Bài viết sau đây mình sẽ giới thiệu bạn cách dùng hàm mktime trong php

wp_head trong wordpress có tác dụng gì

wp_head trong wordpress có tác dụng gì

14 Tháng Chín, 2021

wp_head trong wordpress là một hook cho phép bạn thêm các tính năng tùy chỉnh vào cặp thẻ trong website. Với hook wp_head bạn có thể dễ dàng thêm các thẻ meta, link CDN css, hay thêm đoạn mã javascript vào cặp thẻ .

để hiển thị cũng không ảnh hưởng gì. Vì mình đã đặt sãn các tham số mặc định là lấy 5 bài viết nếu tham số truyên vào rỗng. Và lấy theo chuyên mục cùng bài viết hiện tại. Nếu không truyền id category thì tham số này sẽ rỗng hoặc lấy theo danh mục hiện tại.

Ví dụ khi truyền tham số vào shortcode:

$args_sc tham số dạng mảng mặc định khi truyền vào gồm tất cả các tham số. Ở đây bạn muốn lấy giá trị của cat_id thì nó chứa trong mảng $args_sc. cat_id = $args_sc[‘cat_id ‘]. Tương tự với biến total. Bạn nhớ nên dùng hàm sanitize_text_field để làm sạch các tham số truyền vào.

Để lấy lấy được id danh mục (cat_id) bạn vào Bài Viết -> Chuyên Mục. Bạn tìm đến danh mục muốn lấy rồi di chuột đến nút chỉnh sửa bạn để ý xuống bên dưới sẽ thấy nó hiện id chuyên mục.

Cách tao shortcode wordpress mới nhất
Cách lấy id danh mục

Cách chèn shortcode vào wordpress

Shortcode được chèn ở nhiều nới hỗ trợ widget như editor, mục shortcode. Bạn chỉ cần điền shorcode ví dụ như sau: shortcode có tham số

hoặc shortcode không có tham số:
Hàm _e trong wordpress

Hàm _e trong wordpress

3 Tháng Mười Một, 2021

Hàm _e trong wordpress là một hàm khi bạn phát triển theme hay plugin nên biết. Hàm này có tác dụng in ra chuỗi và chuỗi này có thể được dịch qua ngôn ngữ khác.

Hàm get_post_meta trong wordpress và các ví dụ

Hàm get_post_meta trong wordpress và các ví dụ

1 Tháng Mười Một, 2021

Hàm get_post_meta trong wordpress là hàm để lấy giá trị meta value theo meta key của một bài viết, sản phẩm, hay bất kỳ một custom post type nào. Bạn cần có post id và meta key

Cách thêm sidebar cho wordpress không dùng plugin

Cách thêm sidebar cho wordpress không dùng plugin

7 Tháng Mười, 2021

Bài viết sau mình sẽ hướng dẫn bạn cách thêm sidebar cho wordpress mà không cần dùng đến plugin. Bạn chỉ cần thêm một chút code đăng ký một sidebar trong wordpress

Hàm mktime trong php

Hàm mktime trong php

15 Tháng Chín, 2021

Việc hiểu về các hàm thời gian trong php và hàm mktime trong php sẽ giúp bạn dễ dàng hơn khi làm việc liên quan tới thời gian. Bài viết sau đây mình sẽ giới thiệu bạn cách dùng hàm mktime trong php

wp_head trong wordpress có tác dụng gì

wp_head trong wordpress có tác dụng gì

14 Tháng Chín, 2021

wp_head trong wordpress là một hook cho phép bạn thêm các tính năng tùy chỉnh vào cặp thẻ trong website. Với hook wp_head bạn có thể dễ dàng thêm các thẻ meta, link CDN css, hay thêm đoạn mã javascript vào cặp thẻ .

. Việc chèn shortcode vào wordpress cũng khá đơn giản.

Chèn shortcode vào wordpress trong file php

Shortcode hoạt động và xử lý trong trình soạn thảo của wordpress. Trong php để wordpress hiểu thì bạn cần dùng hàm do_shortcode. Bạn xem ví dụ sau đây:

<?php echo do_shortcode( '[name_shortcode]' ); ?>

name_shortcode ở đây là tên shortcode. Ở ví dụ trên name_shortcode là csw_recent_post .

Chèn shortcode vào wordpress trong widget

Bình thường mặc định thì widget sẽ không xử lý shortcode cho bạn. Nó sẽ hiển thị ra đoạn mã shortcode dưới dạng text mà không xử lý. Nên nếu bạn muốn widget hoạt động thì bạn cần thêm đoạn filter sau vào.

add_filter('widget_text', 'do_shortcode');

Kết Luận

Qua bài viết trên ChuanSeoWeb đã hướng dẫn bạn cách tao shortcode wordpress. Mình hy vọng sẽ giúp ích cho bạn. Nếu bạn gặp vấn đề gì vui lòng để lại bình luận bên dưới .Cám ơn bạn đã quan tâm bài viết.

Nguyễn Luân

MÌnh là Luân. Mình có 4 năm kinh nghiệm trong lập trình website và 3 năm làm về WordPress theme và plugin. Rất hy vọng có cơ hội hợp tác với mọi người. Xin cám ơn.

Có thể bạn quan tâm

Hàm _e trong wordpress

3 Tháng Mười Một, 2021 Bởi

Hàm _e trong wordpress là một hàm khi bạn phát triển theme hay plugin nên biết. Hàm này có tác dụng in ra chuỗi và chuỗi này [...]

Hàm get_post_meta trong wordpress và các ví dụ

1 Tháng Mười Một, 2021 Bởi

Hàm get_post_meta trong wordpress là hàm để lấy giá trị meta value theo meta key của một bài viết, sản phẩm, hay bất kỳ [...]

Cách thêm sidebar cho wordpress không dùng plugin

7 Tháng Mười, 2021 Bởi

Bài viết sau mình sẽ hướng dẫn bạn cách thêm sidebar cho wordpress mà không cần dùng đến plugin. Bạn chỉ cần thêm một [...]

Hàm mktime trong php

15 Tháng Chín, 2021 Bởi

Việc hiểu về các hàm thời gian trong php và hàm mktime trong php sẽ giúp bạn dễ dàng hơn khi làm việc liên quan tới thời [...]

wp_head trong wordpress có tác dụng gì

14 Tháng Chín, 2021 Bởi

wp_head trong wordpress là một hook cho phép bạn thêm các tính năng tùy chỉnh vào cặp thẻ trong website. Với hook wp_head bạn [...]

Bạn để lại bình luận tại đây

favico-1

ChuanSeoWeb.com

Minh Phượng , Nham BIền, Yên Dũng, Bắc Giang
Thời gian hoạt động:
T.2 – T.7: 07:30 am – 5:30 pm