/* ============ Schema: Organization (one per site, front page only, 17.17) ============
* If Rank Math / Yoast is installed, remove this block and let the plugin inject it.
* All numbers come from the knowledge base only; never fabricate missing fields.
*/
if (is_front_page()) :
$zr_org = array(
'@context' => 'https://schema.org',
'@type' => 'Organization',
'name' => 'GDtokin',
'url' => home_url('/'),
'description' => 'Metal stationery and shaped paper clip manufacturer in Dongguan, China, offering OEM and ODM custom shapes, colors and private labeling with 24-hour dispatch.',
// 'logo' => home_url('/logo.png'), // [TODO: real logo]
// 'sameAs' => array(), // [TODO: real social media profiles]
);
echo '' . "\n";
endif;
/* ============ Schema: BreadcrumbList (all inner pages, 17.17) ============ */
if (!is_front_page()) :
$zr_crumb = array(
'@context' => 'https://schema.org',
'@type' => 'BreadcrumbList',
'itemListElement' => array(
array('@type' => 'ListItem', 'position' => 1, 'name' => 'Home', 'item' => home_url('/')),
),
);
$zr_pos = 2;
if (is_singular('product')) {
$zr_terms = get_the_terms(get_the_ID(), 'product_cat');
if ($zr_terms && !is_wp_error($zr_terms)) {
$zr_term = $zr_terms[0];
$zr_crumb['itemListElement'][] = array(
'@type' => 'ListItem', 'position' => $zr_pos++,
'name' => $zr_term->name, 'item' => get_term_link($zr_term),
);
}
$zr_crumb['itemListElement'][] = array(
'@type' => 'ListItem', 'position' => $zr_pos++,
'name' => get_the_title(),
);
} elseif (is_singular('post')) {
$zr_crumb['itemListElement'][] = array(
'@type' => 'ListItem', 'position' => $zr_pos++,
'name' => 'Blog', 'item' => home_url('/blog/'),
);
$zr_crumb['itemListElement'][] = array(
'@type' => 'ListItem', 'position' => $zr_pos++,
'name' => get_the_title(),
);
} elseif (is_tax('product_cat')) {
$zr_term = get_queried_object();
$zr_crumb['itemListElement'][] = array(
'@type' => 'ListItem', 'position' => $zr_pos++,
'name' => 'Products', 'item' => get_post_type_archive_link('product'),
);
$zr_crumb['itemListElement'][] = array(
'@type' => 'ListItem', 'position' => $zr_pos++,
'name' => $zr_term ? $zr_term->name : '',
);
} else {
$zr_crumb['itemListElement'][] = array(
'@type' => 'ListItem', 'position' => $zr_pos++,
'name' => get_the_title(),
);
}
echo '' . "\n";
endif;
🍬
163
Choosing shaped paper clips as wedding favors and event gifts: shape by occasion, finish by budget, and the packing and lead time details that stop favors from arriving late or looking off-brand.
🍬
163
The questions buyers actually ask before ordering custom metal paper clips: what the MOQ is, how sampling works, what lead time to plan, and how packing is configured for your market.
🍬
163
A factory-direct look at how custom shaped paper clips are made: wire forming, plating and finishing, pre-production samples, and what to check before you place an order.
×
No WhatsApp Number Found!