koroush

استایل فراخوانی شده از یک فایل php وانجام تغییرات در آن

21 پست در این موضوع قرار دارد

با سلام خدمت شما

یه پوسته فرزند دارم و یه فایل avia-media.css موجود در پوسته والد که می خوام کد های اون رو از طریق پوسته فرزند تغییر بدم

زمانی که در پوسته والد جستجو می کنم. نام فایل مورد نظر رو جستجو می کنم. به نتایج زیر میرسم.

wp_enqueue_style( 'avia-media-style' , AviaBuilder::$path['assetsURL'].'css/avia-media.css');

تا اونجایی که من می دونم فایل css مورد نظر از طریق php فراخوانی شده . که باید برای ایجاد تغییرات فایل تغییر یافته رو بهش معرفی کنم (ازطریق php فراخوانی کنیم ) اما چون از خط بالا سر در نمی یارم نمی دونم باید چیکار کنم.

ممنون میشم راهنمایی نمایید.

بااحترام

0

به اشتراک گذاری این پست


لینک به پست

اگه اسم فایل رو تغییر ندید نیازی نیست چیزی رو معرفی کنید اگر اسمش رو تغییر دادید جای avia-media نام فایل جدید رو بگذارید

1

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

اگه اسم فایل رو تغییر ندید نیازی نیست چیزی رو معرفی کنید اگر اسمش رو تغییر دادید جای avia-media نام فایل جدید رو بگذارید

با سلام خدمت شما

عرض به حضور شما که بنده در حال حاضر می تونم این فایل رو مستقیما از طریق پوسته والد تغییر بدم اما مشکلی که اینجا وجود داره این که می خوام این کار رو از طریق پوسته قرزند بدم تا زمانی که پوسته والد رو اپدیت کردم تغییرات از بین نره.

حالا که طبق فرمایش شما بدون تغییر نام اون رو در پوشه فرزند قرار دادم و تغییرات مورد نظرم رو هم اعمال کردم حتی فایل مورد نظر رو از فایل استایل فرزند ایمپورت کردم اما تغییراتی که داده بودم اعمال نشد.

خاطر نشان می سازم که بنده می خوام در قسمت ادمین پوسته تغییرات بدم نه در قسمتی که توسط همه قابل مشاهده باشه. گفتمک اینم بگم شاید به درد خورد.

ممنون میشم راهنمایی نمایید

ویرایش شده در توسط koroush
0

به اشتراک گذاری این پست


لینک به پست

پوسته والد و فرزند فرقی نمی کنه

شما یک قالب دارید که همه اجزای اون با کدهای معرفشون به بخش مناسبشون معرفی شدند حالا اگر می خواهید یک فایل از این قالب را ویرایش کنید اون فایل را در نوت پد باز کنید و ویرایش کنید و ذخیره کنید به بقیه ساختار قالب و کدها هم دست نزنید چون احتمالا باعث به هم خوردن دستورات اصلی قالب می شید

قالب را وقتی شخصی سازی می کنید نباید با به روز رسانی خودکار به روزش کنید

باید فایل قالب را دریافت کنید و فایلهای دستکاری نشده را جایگزین کنید و فایلهای ویرایش شده را با هم مقایسه کنید و کدهایی که در به روز رسانی توشون قرار گرفته را جایگزین کنید

2

به اشتراک گذاری این پست


لینک به پست

پوسته والد و فرزند فرقی نمی کنه

شما یک قالب دارید که همه اجزای اون با کدهای معرفشون به بخش مناسبشون معرفی شدند حالا اگر می خواهید یک فایل از این قالب را ویرایش کنید اون فایل را در نوت پد باز کنید و ویرایش کنید و ذخیره کنید به بقیه ساختار قالب و کدها هم دست نزنید چون احتمالا باعث به هم خوردن دستورات اصلی قالب می شید

قالب را وقتی شخصی سازی می کنید نباید با به روز رسانی خودکار به روزش کنید

باید فایل قالب را دریافت کنید و فایلهای دستکاری نشده را جایگزین کنید و فایلهای ویرایش شده را با هم مقایسه کنید و کدهایی که در به روز رسانی توشون قرار گرفته را جایگزین کنید

با سلام خدمت شما

برای بنده بسیار راحت هست که مستقیما پوسته والد رو تغییر بدم . دیگه نیام پوسته فزرند تعریف کنم و دردسرهای دیگه.

اما وقتی می بینم ممکن هست که در یک پوسته چند ده جا رو تغیر بدم و بعد از مدتی که آپدیت اومد بیام بررسی کنم ببینم کجا بود ویرایش کردم و .... یادم بمونه و نمونه و ... .

به همین دلیل هست که از پوسته فزرند استفاده می کنم . تا اونجایی هم که بررسی کردم حکمت پوسته فزرند همینانجام تغییرات دلخواه و وجود تغییرات بعد از به روز رسانی پوسته هست.

با همین اطلاعات اندک فعلی هم وقتی بررسی می کنم میبینم پوسته فرزند مشکل فراموشی محل فایل های ویرایش شده رو از بین می بره.

شما استاد هستید و با تجربه و نظر شما محترم ، اما این جمله ای که گفته شده "

پوسته والد و فرزند فرقی نمی کنه "

با اون چیزی که من دارم در واقعیت میبینم فرق داره وگرنه من مزاحم نمی شدم.

با احترام

0

به اشتراک گذاری این پست


لینک به پست

منظورم از فرقی نداره این نبود که دوتاش یکی هستند

فایلی که ویرایش می کنید اگر قبل از ویرایش به قالب معرفی شده باشه و قالب ازش تغذیه کنه بعد از ویرایش هم می کنه چه فایل توی قالب والد باشه چه توی قالب فرزند

(نکته: قالب والد و فرزندی برای اینکار نیست برای این است که چند نمونه ی مختلف از یک قالب داشته باشید و الا بر اساس مجوز انتشار GPL2 که وردپرس روش منتشر می شه شما آزادید قالبهاییی که از مخزن وردپرس دریافت می کنید را ویرایش کنید مشروط بر اینکه مشخصات اصلی قالب را تغییر بدید و فقط در شناسنامه اش قید کنید که قالب اصلی فلان قالب بوده و این معنیش اینه که اصولا بعد از انجام تغییرات قالب دیگه مشمول به روز رسانی ها نباید بشه چون حالا دیگه فرق کرده و اون قالب اولیه نیست ...)

0

به اشتراک گذاری این پست


لینک به پست

با سلام خدمت شما

اتفاقا بنده مشکلم دقیقا همین جاست که گفته شده "

فایلی که ویرایش می کنید اگر قبل از ویرایش به قالب معرفی شده باشه "

بنا بر اونچه که بنده بهش رسیدم تغییرات در avia-media.css موجود در پوسته والد اعمال و نشون داده میشه.(تست کردم و شد) اما وقتی همون فایل رو با همون نام و تغییر داده شده در پوسته فرزند می گذارم از پوسته فزرند چیزی بر نمی داره و میره پوسته والد.

االان بنده می خوام فایل

avia-media.css موجود در پوسته فزرند رو معرفی کنم تا از اونجا برداره

با ایمپورت کردن هم جواب نگرفتم.

ممنون میشم در این مورد راهنمایی نمایید.

البته این مورد رو هم جا داره بگم که فایل

avia-media.css موجود در پوسته والد درون چهار تا زیر پوشه هست که وقتی بنده با رعایت زیر پوشه ، همون پوشه ها رو هم در پوسته فرزند ایجاد می کنم باز هم مشکل حل نمیشه.

در صورتی که اطلاعات تکمیلی مورد نیاز بود بنده در خدمت هستم.

0

به اشتراک گذاری این پست


لینک به پست

شما یک پوشه داخل قالبتون می سازید و اسمش را می گذارید child یک فایل هم با نام child.css براش می سازید و تغییراتتون رو توش اعمال می کنید (نه هیچ زیر پوشه ی دیگری دقیقا توی روتش) و این کد را می گذارید در انتهای functions.php


wp_enqueue_style( 'child', get_template_directory_uri() . '/child/child.css' );

یا داخل تگ php می گذارید در header.php و قبل از بسته شدن تگ head

1

به اشتراک گذاری این پست


لینک به پست

شما یک پوشه داخل قالبتون می سازید و اسمش را می گذارید child یک فایل هم با نام child.css براش می سازید و تغییراتتون رو توش اعمال می کنید (نه هیچ زیر پوشه ی دیگری دقیقا توی روتش) و این کد را می گذارید در انتهای functions.php


wp_enqueue_style( 'child', get_template_directory_uri() . '/child/child.css' );

یا داخل تگ php می گذارید در header.php و قبل از بسته شدن تگ head

با سلام خدمت شما

این روش جواب داد !

ممنون از اینکه وقت گذاشتید

تغییراتی که گفته بودید رو اعمال کردم و به مشخصه مورد نظر با اعمال !important جواب گرفتم.

یه مورد دیگه ، من با استفاده ار آموزش های شما اومدم دستوراتی که دادید رو در پوشه فرزند دادم به صورت زیر :

<?php

wp_enqueue_style( 'child', get_template_directory_uri() . '../aks2aks-child/child/child.css' );

?>

موارد بالا رو در فایل فانشن فرزند ریختم.

پوشه و فایل child رو هم در پوسته فرزند ایجاد کردم

اما تو این حالت جواب نگرفتم.

کاری که کردم اشتباه بوده و از نظر علمی جواب نمیده؟ یا شدنیه؟

وظیفه عبارت child در جمله

( 'child', get_template_directory_uri()

چی هست؟ هر عبارت دیگه ای می تونیم بگذاریم ؟

با احترام

0

به اشتراک گذاری این پست


لینک به پست

کد را باید در functions.php قالب والد بگذارید

0

به اشتراک گذاری این پست


لینک به پست

کد را باید در functions.php قالب والد بگذارید

با سلام خدمت شما

با توجه به اینکه باید به تمام مقادیر موجود در فایل استایل child عبارت !important اضافه کنم. آیا راهی هست که تعریف کنم که تمام مقادیر فایل موررد نظر بالاترین اولویت رو داشته باشن و برای تک تک مقادیر !important رو وارد نکنم.

0

به اشتراک گذاری این پست


لینک به پست

استایل دهی پله کانی است

یعنی الویت پیش فرض با آخرین استایله

اگرفرض کنیم در style1.css رنگ زمینه مشکی باشه و در style2.css رنگ زمینه قرمز در حالت

[/size]
<link href="style1.css">
<link href="style2.css">

صفحه قرمز دیده می شه و در حالت


<link href="style2.css">
<link href="style1.css">

مشکی

جایی که کد را می گذارید اگر بعد از کد معرفی استایل والد باشه نیازی به تعریف اولویت ندارید

0

به اشتراک گذاری این پست


لینک به پست

استایل دهی پله کانی است

یعنی الویت پیش فرض با آخرین استایله

اگرفرض کنیم در style1.css رنگ زمینه مشکی باشه و در style2.css رنگ زمینه قرمز در حالت

[/size]
<link href="style1.css">
<link href="style2.css">

صفحه قرمز دیده می شه و در حالت


<link href="style2.css">
<link href="style1.css">

مشکی

جایی که کد را می گذارید اگر بعد از کد معرفی استایل والد باشه نیازی به تعریف اولویت ندارید

با سلام خدمت شما

بعد از اون کد و در انتهای فایل فانشن هست اما تا مفدار !important رو وارد نکنم تغییرات اعمال نمیشه.

0

به اشتراک گذاری این پست


لینک به پست

کسی نیست راهنمایی کنه؟

0

به اشتراک گذاری این پست


لینک به پست

دوست عزیز پاسختون رو عرض کردم پاسخ های قبلی را با دقت بخونید و انجام بدید فراخوانی فایل استایل بندی کار خیلی ویژه و پیچیده ای نیست

کدها هم که نمی توانند هرجور دلشان بخواهد عمل کنند قانون کد ها کاملا مشخصه و همونیه که عرض شد اگر شما نمی تونید درست بچینیدشون و ازشون جواب بگیرید مطمئن باشید مشکل از طرف شماست و تنها راه حلش هم دقت نمودن به پاسخ هاتونه

0

به اشتراک گذاری این پست


لینک به پست

ارسال شده در (ویرایش شده)

با سلام و خسته نباشید

دوستان من 4 تا فایل css دارم بنامهای rtl.css , style.css , main.css , bootstrap.css که دوتاش (rtl.css , style.css) توی روت قالب والدم هست و یه فلدر بنام assets که در این فلدر فلدر دیگری بنام stylesheets هم وجود داره در روت قالبم هست و در فلدر stylesheets اون دوتای دیگه فایلهای Css ام  یعنی (main.css, bootstrap.css)هستن.

حالا کدی که توی functins.php قالب فرزندم نوشتم برای ارث بری فایلهای css فرزند از پدر اینه:

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/style.css' );
}
?>

که داره درست عمل میکنه برای style.css و rtl.css

اما نمیدونم حالا که توی قالب فرزند مسیر فایلهای main , bootstrap  رو شبیه سازی کردم و فلدرهای assets و stylesheets رو ایجاد کردم و اون دوتا main.css و bootstrap.css رو در فایل stylesheets قرار دادم باید چه تغییری توی فایل functions.php فرزند بدم تا فایلهای main.css و bootstrap هم اعمال بشن و درست عمل کنه؟

دوستان واقعا" به کمکتون احتیاج دارم. ممنونم میشم راهنماییم کنید.

ویرایش شده در توسط saraet
0

به اشتراک گذاری این پست


لینک به پست

با سلام

از کد زیر استفاده کنید :

<?php wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/assest/نام پوشه/نام پوشه /file.css' ); ?>

موفق و پیروز باشید.

0

به اشتراک گذاری این پست


لینک به پست

سلام ممنونم از جوابگوییتون

من کد شما رو به کد function موجود در فایل functions.php خودم اضافه کردم و اینجور نوشتم:

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_directory_directory_uri() . 'style.css' );
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/assets/stylesheets/main.css' );
}
?>

 

اما سایتم بالا نمیاد اینجوری مگر اینکه خط آخر فایل functions.php رو که شما فرموده بودین حذف کنم.

میشه راهنمایی کنید مشکل از کجاس؟ ممنونم

0

به اشتراک گذاری این پست


لینک به پست
در 7 ساعت قبل، saraet گفته است :

سلام ممنونم از جوابگوییتون

من کد شما رو به کد function موجود در فایل functions.php خودم اضافه کردم و اینجور نوشتم:

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', get_directory_directory_uri() . 'style.css' );
    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/assets/stylesheets/main.css' );
}
?>

 

اما سایتم بالا نمیاد اینجوری مگر اینکه خط آخر فایل functions.php رو که شما فرموده بودین حذف کنم.

میشه راهنمایی کنید مشکل از کجاس؟ ممنونم

با عرض سلام

کد زیر رو تست کنید :

<?php
add_action( 'wp_enqueue_scripts', 'my_theme_enqueue_styles' );
function my_theme_enqueue_styles() {
    wp_enqueue_style( 'parent-style', bloginfo('template_url') . 'style.css' );
    wp_enqueue_style( 'parent-style', bloginfo('template_url') . '/assets/stylesheets/main.css' );
}
?> 

موفق و پیروز باشید.

0

به اشتراک گذاری این پست


لینک به پست

سلام

مرسی از جوابگویی ها

من کد شمارو هم نوشتم باز main.css ام اجرا نمیشد .

اومدم فایل functions.php ام رو اینجور نوشتم فکر کنم الان همه رو داره میخونه

<?php

add_action( 'wp_enqueue_scripts', 'theme_enqueue_styles' );
function theme_enqueue_styles() {

    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/assets/stylesheets/main.css' );
    wp_enqueue_style( 'child-style',
        get_stylesheet_directory_uri() . '/assets/stylesheets/main.css',
        array('parent-style')
    );

    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/assets/stylesheets/bootstrap.css' );
    wp_enqueue_style( 'child-style',
        get_stylesheet_directory_uri() . '/assets/stylesheets/bootstrap.css',
        array('parent-style')
    );

    wp_enqueue_style( 'parent-style', get_template_directory_uri() . '/rtl.css' );

    wp_enqueue_style( 'child-style',
        get_stylesheet_directory_uri() . '/rtl.css',
        array('parent-style')
    );

}
?>

 

بنظر شما هم این کد درسته؟

0

به اشتراک گذاری این پست


لینک به پست

با عرض سلام

میتونید از کد زیر استفاده کنید. به نظرم این کد بهتره :

<?php 
function namespace_theme_stylesheets() {
    wp_register_style( 'mamies-wafers-bootstrap-min',  get_template_directory_uri() .'/css/bootstrap.min.css', array(), null, 'all' );
    wp_register_style( 'mamies-wafers-carousel',  get_template_directory_uri() .'/css/carousel.css', array(), null, 'all' );
    wp_register_style( 'mamies-wafers-style', get_stylesheet_uri(), '', null, 'all' );
    wp_enqueue_style( 'mamies-wafers-bootstrap-min' );
    wp_enqueue_style( 'mamies-wafers-carousel' );
    wp_enqueue_style( 'mamies-wafers-style' );
}
add_action( 'wp_enqueue_scripts', 'namespace_theme_stylesheets' );
?>

موفق و پیروز باشید.

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری

  • مطالب مشابه

    • توسط Ali Brm
      با سلام خدمت دوستان
      سوالی که داشتم درباره شخصی سازی قالب سایتم است.
      در حال طراحی قالب سایتم هستم و از قالب publisher استفاده میکنم. در بعضی قسمت ها مثلا لوگوی سایت، اطراف آن Padding: 25px وجود داره. به فایل CSS قالب رجوع کردم و این عدد رو به 0px تغییر دادم و بعد از سیو مشکلم حل شد و padding اطراف لوگوی سایتم نبود. مشکل اینجاست که مثلا در تنظیمات قالب با استفاده از خوده ورد پرس و خوده ابزارهای قالب کافیه گزینه "ذخیره تنظیمات" رو بزنم تا همه چی دوباره برگرده و Padding مجدد بوجود میاد. این رو هم میدونم که اینها یک سری کد هستند که با زدن "ذخیره تنظیمات" اجرا میشن و اعدادی که دستی تغییر دادم رو مجدد با تنظیمات از پیش تعریف شده قالب رونوشت میکنن. حالا میخوستم بدونم راه حل چیه؟ این یکی از موارد بود. مثلا شاید بخوام هدر سایتم ارتفاع خاصی داشته باشه یا رنگ متنی رو جدا تغییر بدم. چه جوری میتونم این مشکل رو حل کنم؟
      سعی کردم توضیح واضح باشه اگه گویا نیست دوستان بفرمایند تا بیشتر توضیح بدم.
      ممنون و متشکر
    • توسط ashkan91
      با سلام و خسته نباشید
      موضوع: تغییر دادن رنگ قسمتهای مختلف بدنه یک سایت بدون استفاده از بخش css اضافی وردپرس
      من یک سایت دارم که از یک قالب مادر ارث میبرد . وقتی از قسمت ویرایشگر وردپرس قالب سایتم وارد بخش CSS پوسته مادر سایتم میشوم و اقدام به تغییر کد رنگ قسمتهای مختلف سایتم میکنم متاسفانه رنگ آن قسمتهای مذکور تغییر نمی کند و همچنان قسمتهای مذکور برنگ خودشان هستند علت چه هست؟ و آیا تنظیم جای دیگری را نیز باید تغییر داد یا خیر؟
      حاوی اسکرینشات
       

    • توسط Mostafa
      سلام،
      ما برای توسعه تیممون نیاز به یک PHP Developer داریم که به فرانت و وردپرس هم تسلط داشته باشه. کار به صورت ریموت و تمام وقت است.
       
      لطفأ رزومه رو به m@soufi.me ارسال کنید.
       
      با تشکر
    • توسط soheil1
      سلام دوستان من قالبی دارم که دوتا فایل css داره یکی حالت شب و مشکی یکی روز و سفید. الان به صورت دستی میشه از تنظیمات قالب بین این دوحالت سوئیچ کرد میخوام بدونم راحی هست که کاربر با یک دکمه بین این دوحالت سوئیچ کنه یا مناسب با ساعت شبانه روز حالت شب و روز فعال بشه؟!