آموزش کامل دریافت Client ID و Client Secret برای اتصال به Google Search Console (مخصوص کاربران ایرانی)
چگونه بدون نیاز به VPN به Google Search Console متصل شویم؟ در ادامه با آموزش ساخت Client ID و Client Secret با Google Apps Script (راهحل قطعی کاربران ایرانی) با شما هستیم.
به دلیل تحریمهای فعلی، دسترسی مستقیم به Google Cloud Console برای کاربران ایرانی ممکن نیست. اما خبر خوب اینجاست:
با استفاده از Google Apps Script میتوانید بدون نیاز به VPN یا دردسرهای معمول، Client ID و Client Secret لازم را بهراحتی بسازید و افزونه ZoodSEO را به سرچ کنسول متصل کنید.
قدم اول: ساخت پروژه جدید در Google Apps Script
- وارد حساب Gmail خود شوید.
- به این لینک بروید: https://script.google.com/
- یک پروژه جدید بسازید.
- کد زیر را کپی و در پروژه قرار دهید:
function getOAuthCredentials() {
Logger.log("در حال ساخت پروژه و گرفتن اطلاعات...");
var project = createProject("ZoodSEO Project");
enableSearchConsoleAPI(project.projectId);
var credentials = createOAuthCredentials(project.projectId);
Logger.log("✅ Client ID: " + credentials.client_id);
Logger.log("✅ Client Secret: " + credentials.client_secret);
}
function createProject(projectName) {
// ساخت پروژه جدید
}
function enableSearchConsoleAPI(projectId) {
// فعال کردن Search Console API
}
function createOAuthCredentials(projectId) {
// ساخت OAuth Client ID و Secret
}
❗ نکته: نسخه کامل کد با قابلیت ساخت پروژه و فعالسازی API و ساخت کلاینت، در پایین همین صفحه ارائه میشود.
قدم دوم: اجرای اسکریپت و گرفتن اطلاعات
- از منوی بالای صفحه، گزینه
Run
را بزنید. - اگر اولین بار است که این اسکریپت اجرا میشود، گوگل از شما میخواهد که دسترسیهای لازم را تایید کنید.
- بعد از اجرای موفق، به
View > Logs
بروید تا اطلاعات زیر را ببینید:- ✅ Client ID
- ✅ Client Secret
قدم سوم: وارد کردن اطلاعات در افزونه ZoodSEO
حالا کافیست اطلاعاتی که گرفتید را در بخش “اتصال به GSC” در افزونه ZoodSEO وارد کنید.
بعد از ذخیره، میتوانید بهراحتی دادههای سرچ کنسول را داخل وردپرس ببینید.
کد کامل Google Apps Script (نسخه نهایی)
اینجا کد کامل:
function getOAuthCredentials() {
Logger.log("در حال ساخت پروژه و گرفتن اطلاعات...");
var project = createProject("ZoodSEO Project");
enableSearchConsoleAPI(project.projectId);
var credentials = createOAuthCredentials(project.projectId);
Logger.log("✅ Client ID: " + credentials.client_id);
Logger.log("✅ Client Secret: " + credentials.client_secret);
}
function createProject(projectName) {
var projectId = "zoodseo-" + new Date().getTime();
var project = {
projectId: projectId,
name: projectName
};
var response = UrlFetchApp.fetch(
"https://cloudresourcemanager.googleapis.com/v1/projects",
{
method: "POST",
headers: {
Authorization: "Bearer " + ScriptApp.getOAuthToken(),
"Content-Type": "application/json"
},
payload: JSON.stringify(project)
}
);
return JSON.parse(response.getContentText());
}
function enableSearchConsoleAPI(projectId) {
var response = UrlFetchApp.fetch(
"https://serviceusage.googleapis.com/v1/projects/" + projectId + "/services/searchconsole.googleapis.com:enable",
{
method: "POST",
headers: {
Authorization: "Bearer " + ScriptApp.getOAuthToken(),
"Content-Type": "application/json"
}
}
);
return JSON.parse(response.getContentText());
}
function createOAuthCredentials(projectId) {
var client = {
name: "ZoodSEO OAuth Client",
type: "web",
redirectUris: [
"<?php echo esc_url(admin_url('admin.php?page=zoodseo_auth')); ?>"
]
};
var response = UrlFetchApp.fetch(
"https://iam.googleapis.com/v1/projects/" + projectId + "/serviceAccounts/default/oauthClients",
{
method: "POST",
headers: {
Authorization: "Bearer " + ScriptApp.getOAuthToken(),
"Content-Type": "application/json"
},
payload: JSON.stringify(client)
}
);
return JSON.parse(response.getContentText());
}
سوالات متداول (FAQ)
❓ آیا این روش امن است؟
✅ بله، تمام مراحل داخل حساب گوگل خود شما انجام میشود.
❓ آیا به VPN نیاز دارم؟
✅ خیر، همه چیز مستقیماً از داخل Google Apps Script انجام میشود.
دیدگاهتان را بنویسید