WordPress: Ysgrifennu Cod Byr O Thema Rhiant yn Thema Eich Plentyn

WordPress WordPress

Wel, mae wedi bod yn dipyn o amser ers i mi rannu rhai awgrymiadau ar raglennu yn WordPress. Yn ddiweddar, rwyf wedi bod yn ôl ar y fainc yn defnyddio cod ar gyfer ein holl gleientiaid ac mae wedi bod yn hwyl mynd yn ôl i mewn i bethau. Efallai eich bod wedi sylwi ar yr integreiddiadau Papur Gwyn Marchnata newydd ledled y wefan - roedd hynny'n dipyn o prosiect hwyl!

Heddiw, roedd gen i fater gwahanol. Mae botymau ar lawer o'n cleientiaid trwy godau byr thema thema rhieni. Gofynnodd un o'n partneriaid yn Elevated Marketing Solutions a allem wneud rhywfaint o olrhain digwyddiadau ar y botymau gan eu bod yn wych galw-i-weithredu ledled y safleoedd. Nid yw botymau cod byr yn ddim mwy na thag angor sydd wedi'i ddylunio ychydig yn fwy huawdl gan ddefnyddio cyfres o ddosbarthiadau sy'n cael eu poblogi gan yr opsiynau cod byr.

Oherwydd hyn, roedd angen i ni ychwanegu digwyddiad onclick i'r testun angor i gofrestru digwyddiad. Dyma sut olwg fydd arno:

Botwm Cartref

Y broblem, wrth gwrs, yw bod cod byr ar waith yn ein thema rhiant ac nid ydym am olygu thema rhiant. A chan fod y cod byr yn cael ei ddefnyddio ar draws cynnwys ledled y wefan, nid ydym am greu cod byr newydd chwaith.

Mae'r ateb yn eithaf slic. Y WordPress API yn caniatáu ichi dynnu cod byr! Felly, yn ein thema plentyn, gallwn gael gwared ar y cod byr, yna rhoi ein swyddogaeth cod byr newydd yn ei le:

add_action ('after_setup_theme', 'galw_child_theme_setup');
swyddogaeth galw_child_theme_setup () {remove_shortcode ('old_button_function_in_parent_theme'); add_shortcode ('botwm', 'new_button_function_in_child_theme'); }
swyddogaeth new_button_function_in_child_theme ($ atts, $ content = null) {... mae eich cod byr newydd yma ...}

Yn fy swyddogaeth botwm newydd (yn swyddogaethau.php fy Thema Plentyn), rwy'n ailysgrifennu'r swyddogaeth cod byr i atodi digwyddiad onClick digwyddiad deinamig. Mae'r allbwn yn gweithio'n hyfryd ac mae bellach yn olrhain yn Google Analytics!

Beth ydych chi'n feddwl?

Mae'r wefan hon yn defnyddio Akismet i leihau sbam. Dysgwch sut mae eich data sylwadau yn cael ei brosesu.