نحوه استفاده از قالب ها برای فتوشاپ قالب ها چیست و چرا به آنها نیاز است؟ قالب ها برای چیست؟

در یکی از مقالات قبلی، قبلاً به شما گفتم که چگونه پیوندهای خارجی پنهان را از یک الگو حذف کنید و همچنین پاورقی آن را تمیز کنید (پانویس - مکانی که در پایین سایت قرار دارد). اما بنا به دلایلی فراموش کردم به شما بگویم که هدف آن چیست و چیست. با این مقاله اشتباه خود را اصلاح خواهم کرد.

در شکل اصلی خود، جوملا CMS دارای چندین قالب استاندارد از پیش نصب شده است. اما برای گسترش قابلیت های سایت و جذابیت بیشتر طراحی آن نیاز به نصب قالب های اضافی وجود دارد.

قالب برای چیست؟

به لطف قالب مشخص شده است ظاهرسایت. این مبنایی است که بر اساس آن کل همه عناصر کاری (پلاگین ها، ماژول ها، اجزاء) به درستی عمل می کنند.

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

قالب در جوملا چیست؟

این یک جزء سایت است که طراحی آن را تعیین می کند. این مجموعه ای از عناصری است که کاربر هنگام بازدید از یک سایت خاص در اینترنت مشاهده می کند.

هر قالب جوملا شامل موارد زیر است:

  • فایل index.php که وظیفه ساختار تمامی صفحات سایت شما را بر عهده دارد.
  • فایل style.css که به لطف آن طراحی بلوک های صفحه در یک پروژه وب تنظیم می شود. این شامل سبک نوشتن و رنگ فونت ها، افست آنها و غیره است.
  • فایل XML مسئول نصب قالب از طریق پنل مدیریت جوملا است.

به نوبه خود، دو نوع قالب برای جوملا وجود دارد:

  1. قالب سایت. که به معنای واقعی کلمه به عنوان یک قالب وب سایت ترجمه می شود.
  2. قالب Backend. این عبارت در ترجمه به معنای - الگویی برای بخش اداری سایت است.

از تمام موارد بالا، می‌توانیم به طور خلاصه بگوییم که یک قالب برای جوملا یک طرح‌بندی زیبایی‌شناسانه برای هر صفحه از سایت است که وظیفه نمایش عناصر محتوا را بر عهده دارد. این یک راه حل آماده است که نیازی به نوشتن کد برای هر صفحه به طور جداگانه را بی نیاز می کند.

و در پایان، برای سهولت یافتن الگوهای تمیز، چند آدرس را که تأیید کرده ام برای شما می گذارم.

اگرچه استانداردهای قالب برای مدت طولانی منتشر شده است، اما هنوز به طور گسترده توزیع نشده اند. البته، استفاده از چیزی که کامپایلر شما از آن پشتیبانی نمی کند، سخت است، که احتمالاً دلیل شماره یک این است که اکثر برنامه نویسان ++C نمی دانند چگونه با قالب ها کار کنند. خوشبختانه، همه کامپایلرهای اصلی اکنون وارد قرن بیستم شده اند، بنابراین این مشکل قبلاً ناپدید شده است. تنها چیزی که باقی می ماند این است که بفهمیم یک الگو چیست، چگونه می توان همه تله های نحوی را دور زد، اما مهمتر از همه، چرا به آن نیاز است. این فصل فراتر از یک نمای کلی نحوی است. همچنین اصول ایمنی نوع در C++ را با تمرکز ویژه روی قالب ها پوشش می دهد.

قالب ها چیست و چرا به آنها نیاز است؟

رابط یک کلاس مجموعه ساده (با استفاده از یک لیست پیوندی به عنوان مثال) به شکل زیر است:

class ListNode ( خصوصی:

ListNode* next; داده های void*;

ListNode(void* d، ListNode* n = NULL) : next(n)، data(d) () ~ListNode() ( حذف بعدی؛ )

void* Data() (داده را برمی گرداند؛ ) ListNode* Next() (بازگشت بعدی؛)

به چیز خاصی توجه کردید؟

چالش ها و مسائل

اول از همه، همه این خلأ*ها چشمگیر هستند. هم شما و هم من به خوبی می دانیم که در واقع پشت آنها چیزی کاملا متفاوت نهفته است. در جایی از کد مشتری باید کاری شبیه به این انجام دهید:

برای (ListNode* n = listHead; n != NULL; n = n->Next()) f((Foo*)n->Data());

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

مشکل دوم این است که عناصر لیست نمی دانند به کدام نوع اشاره می کنند. فرض کنید می‌خواهید که نابودگر فهرست نه تنها خود گره‌ها، بلکه داده‌هایی را که به آن‌ها ارجاع می‌دهند را نیز حذف کند. شما نمی توانید یک نشانگر void* را به اپراتور حذف بدهید و امیدوار باشید که تخریب کننده مناسب را انتخاب کند.

راه حل ها

یکی از راه حل های امکان پذیر- نیاز دارید که تمام اشیاء موجود در مجموعه شما از یک اجداد مشترک نشات گرفته باشند. در این حالت، void* را می توان با یک اشاره گر به کلاس پایه جایگزین کرد و حداقل ظاهر نظم را ایجاد کرد. اگر تخریبگر کلاس پایه مجازی باشد، پس حداقلما می توانیم نابودگر ListNode را بازنویسی کنیم تا زمانی که خودکشی می کند، محتویات لیست را نیز از بین ببرد. اما اگر آن کلاس پایه دارای کلاس‌های مشتق شده باشد، مطمئناً مجبور خواهید بود برای آن انواع مشتق شده، پخش‌های ناامن انجام دهید.

راه حل دیگر ایجاد یک لیست متناسب با یک نوع خاص است. فرض کنید برای حفظ لیستی از اشیاء کلاس Foo، یک کلاس مجموعه ListOfFoos ایجاد می شود. در این صورت، اگر Foo کلاس‌های مشتق‌شده‌ای نداشته باشد، مجبور نخواهید بود تایپ کست‌ها را انجام دهید. اما آیا ارزش ایجاد کلاس های تکراری را دارد که فقط در انواعی که با آنها کار می کنند متفاوت باشند؟ البته برش بزنید و بچسبانید ویرایشگرهای متنچیز فوق‌العاده‌ای است و اسکریپت‌های پردازش کلمه به شما کمک می‌کنند تا کد را به سرعت بازتولید کنید. اما اگر نیاز به تغییر ارائه همه آن لیست ها داشته باشید، به ناچار با سردرد شدیدی مواجه خواهید شد.

در گذشته، مشکلاتی مانند این اغلب با استفاده از ماکروهای #define حل می شدند:

#define ListNode(Type) \ class ListNode##Type ( \ private: \

ListNode##Type* next; داده های نوع* \

ListNode##Type(Type* d, ListNode* n = NULL) : next(n)، data(d) () \ ~ListNode() ( حذف بعدی؛ ) \

void* Data() ( داده را برمی گرداند؛ ) \ ListNode* Next() ( برگرداندن بعدی؛ ) \

اگر به طور تصادفی فراموش کنید که یک \ را اضافه کنید، کامپایلر با زوزه های بلند خشمگین فوران می کند، اما با دقت کافی این تکنیک کار می کند. علامت ## نشان دهنده الحاق است. طراحی حتی زشت‌تر می‌شود، اما باید آن را تحمل کنید - باید مطمئن شوید که نام‌های مجموعه منحصربه‌فرد هستند. این تکنیک دارای معایب متعددی است. اگر توابع کلاس درون خطی نباشند، باید ماکروهای اضافی برای آن‌ها ایجاد کنید و از پیاده‌سازی آن‌ها در یک واحد کامپایل اطمینان حاصل کنید. برخی از کامپایلرها با ماکروهای بیش از حد طولانی مشکل دارند. #defines را نمی توان تودرتو کرد، بنابراین دیگر به ساختارهای داده ای بازگشتی و ایمن نیازی نیست. بدترین چیز این است که وقتی خطایی در یک ماکرو شناسایی می شود، دیباگر بازوهای خود را جمع می کند و گزارش می دهد که در جایی در ماکرو خطایی وجود داشته است، اما شماره خط خاصی را نشان نمی دهد.

الگوها - ماکروهای پیشرفته

موتور قالب در تصویر ظاهر می شود - یک پردازنده ماکرو بهبود یافته برای دستورات #define. قالب ها چیزی بیش از ماکروها بدون تمام محدودیت های ذکر شده در بالا نیستند. می توان آنها را تودرتو کرد. لازم نیست نگران تکرار عملکردهای آنها باشید. اکثر اشکال زداهای C++ به درستی رشته الگو را در صورت بروز خطا مشخص می کنند. سایز قالب مشکلی ایجاد نخواهد کرد. در نهایت لازم نیست برنامه زیبای خود را با قیچی هایی مانند \ و ## خراب کنید.

خاطره انگیزترین لحظات زندگی ما همیشه با ما می ماند. برخی از مردم تصاویر گذشته را از حافظه خود بازسازی می کنند، اما بیشتر آنها شواهد مستندی در قالب عکس دارند.

لحظات خاص همیشه ارزشمند هستند، اما به ندرت کامل هستند، به همین دلیل است که میلیون ها نفر فتوشاپ را نصب می کنند. هر فایل PSD این برنامه باعث بهتر شدن واقعی می شود:

فتوشاپ بهترین نیست برنامه ساده. البته گوش های خوک را به خود وصل کنید به بهترین دوست- این یک کار اجباری است و به مهارت خاصی نیاز ندارد. اما ساختن این گوش‌ها شبیه به گوش‌های خود وظیفه‌ی کاربران با تجربه‌تر است.

افرادی هستند که به دلیل شغلی که دارند مجبورند از فتوشاپ استفاده کنند. حرفه ها متفاوت هستند، بنابراین اهداف برای ایجاد اشیاء گرافیکی متفاوت است. گاهی اوقات فقط لازم است تصاویر را کمی تغییر دهید تا جلوه مورد نظر را بدست آورید. در چنین مواردی است که قالب های فتوشاپ ایده آل هستند که در این مقاله به آنها پرداخته خواهد شد.

چرا قالب ها مورد نیاز است؟

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

  • قالب های فتومونتاژ. با کمک آنها می توانید عکس های بسیار زیبایی ایجاد کنید. این الگو به شبیه سازی شرایط داخلی یا طبیعی مطلوب کمک می کند:

در این مورد، به عنوان یک قاعده، شکل انسان به طور کامل گرفته می شود.

  • قالب های عکس هیچ چیز برای فتوشاپ غیرممکن نیست: برد پیت می تواند لباس شنا بپوشد و سگ شما می تواند رئیس جمهور شود. ماسک های عکس به شما این امکان را می دهند که مانند سرگرمی های معروف در سواحل دریا، یک چهره را در مکان مورد نظر در عکس قرار دهید ( سر خود را به دکوراسیون مقوا بچسبانید):

چگونه کسی را تاجر کنیم

برای فردی که حتی کلی ترین دانش را در زمینه فناوری های فتوشاپ دارد، قرار دادن چهره در قالب کار سختی نخواهد بود. بیایید این کار را مرحله به مرحله انجام دهیم.

ابتدا باید خرید کنید ( یا به صورت رایگان دانلود کنید) قالبی که دوست دارید. این فایل دارای پسوند psd است و مانند هر تصویر با فرمت پشتیبانی شده باز می شود ("فایل" - "باز"). پس از این، قالب فتوشاپ به طور کامل در اختیار ما است:

تجارت یک تجارت است، بنابراین باید شخصیت های جدی را انتخاب کنید. عکس مورد نظر را باز کرده و تصویر را روی قالب بکشید:

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

بیایید به پنجره لایه ها برویم. برای اینکه صورت به طور هماهنگ در قالب های فتوشاپ قرار گیرد، باید نسبت به لایه اصلی در پس زمینه قرار گیرد. در مورد ما، لایه 2 را به مکان مورد نظر منتقل می کنیم:

چیزی که باقی مانده بود یک منطقه خاکستری نه چندان جذاب در اطراف صورت بود. بیا حذفش کنیم" با عصای جادویی»:

با نسبت های درست انتخاب شده و برش دقیق تصویر، می توانید به ادغام کامل چهره در قالب های فتوشاپ برسید.

خودتان قالب ها را ایجاد کنید

موقعیت‌هایی اغلب زمانی پیش می‌آیند که قالب‌های موجود متناسب با سبک نیستند، در این صورت از روش انجام خودت استفاده می‌شود. قبل از شروع ساخت قالب برای عکاسی با دستان خود، باید نکات زیر را در نظر بگیرید.

بیایید بفهمیم که قالب‌های Yandex.Direct برای چه مواردی می‌توانند مفید باشند و همچنین نحوه سفارشی‌سازی و استفاده از آنها.

قالب ها برای چیست؟

تصور کنید بیش از 1000 کلمه کلیدی دارید و اکثر آنها کلمات کلیدی کم حجم هستند. با رویکرد کلاسیک "1 کلید = 1 تبلیغ"، یک کمپین کافی نیست. چگونه باید ادامه داد؟

با استفاده از گروه بندی تبلیغات می توانید کمپین خود را تا حداقل 10000 کلمه کلیدی گسترش دهید. یا چندین کمپین ایجاد کنید. با این حال، این منجر به نفخ حساب و در نتیجه پیچیدگی مدیریت می شود: مشاهده آمارهای کلی غیرممکن است.

الگوها به شما این امکان را می‌دهند که دسته‌هایی از تبلیغات و کمپین‌های مشابه را تولید نکنید و در عین حال از آن اجتناب کنید. چگونه کار می کند؟

هنگامی که یک کلمه کلیدی خاص منجر به نمایش یک تبلیغ می شود، Yandex این کلمه کلیدی را در عنوان، متن آگهی و پیوند وب سایت/لینک نمایش قرار می دهد. در نتیجه برای هر کدام عبارت جستجویک تبلیغ منحصر به فرد در حال انتشار است.

برای مثال، اگر کاربری «پیراهن آستین کوتاه چهارخانه» را جستجو کند، عبارت «خرید پیراهن آستین کوتاه چهارخانه» را در عنوان آگهی مشاهده می‌کند.

این همچنین به شما امکان می دهد:

  • کلمات کلیدی را در املای مختلف گروه بندی کنید (این برای نسخه های اشتباه و روسی شده کلمات کلیدی مارک دار با املای انگلیسی مفید است): «خرید ماشین لباسشویی indesit" و "خرید ماشین لباسشویی indesit"؛
  • شکل های صحیح کلمه را رعایت کنید. اگر عنوان "خرید #ماشین لباسشویی indesit#" باشد، در همان حالت تمام گزینه ها را مشخص می کنید. ” خرید #اجاق گاز ایندزیت ” و غیره

محدودیت های

  • این الگوریتم در صورتی کار می کند که عبارت کلیدی شامل بیش از 33 کاراکتر نباشد (شامل فاصله، اما به استثنای کلمات منفی و عملگرهای + و!). در غیر این صورت کاربر گزینه پیش فرض را در آگهی می بیند. جزئیات بیشتر در ادامه مقاله ارائه شده است.
  • عبارات موجود در یک تبلیغ کم بسامد (کمتر از 100 نمایش در ماه) و از نظر معنی نزدیک هستند. به عنوان مثال، "خدمات عکاس Perm"، "Photography Perm"، "عکاسی حرفه ای Perm"؛
  • فرکانس کلی بیشتر از 300-350 برداشت در ماه نیست.

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

چگونه یک قالب اضافه کنیم

هنگام ایجاد یا ویرایش یک تبلیغ، بسته به درخواست کاربر تصمیم بگیرید کدام کلمات را جایگزین کنید و آنها را با علامت هش (#) محدود کنید:

هنگام انتخاب عبارات، مطمئن شوید که:

  • تبلیغات از نظر گرامری صحیح است.

به عنوان مثال، "فروشگاه با اجزای رایانه شخصی" → "فروشگاه قطعات رایانه شخصی"، "فروشگاه آنلاین برای خرید قطعات رایانه شخصی" → "خرید قطعات رایانه شخصی در فروشگاه آنلاین".

  • متن تبلیغات شرایط تعدیل Yandex را در نظر می گیرد.
  • پیوندهای دارای جایگزین فعال هستند و به صفحات صحیح منتهی می شوند.
  • شما حداکثر تعداد کاراکترها را برای هر فیلد دارید:


با این حال، این امکان برای پرس و جوهای بسیار طولانی وجود ندارد. در این حالت گزینه پیش فرض بیرون می آید (این همان چیزی است که در تنظیمات با اپراتورهای # مشخص کرده اید). آن را کلی تر کنید تا کاربر معنی را بفهمد، اما در عین حال احساس کند که این پیشنهاد برای او مناسب است.

بیایید در درخواست بگوییم «پردازنده بخر هسته اینتل i7 in Perm" بیش از 33 کاراکتر است و نمی توان آن را در عنوان درج کرد. برای اینکه جایگزینی به درستی کار کند، بیایید عنوان پیش فرض «Intel core i7 برای فروش در Perm» را پیکربندی کنیم:

  • ما کلمه "پردازنده" را حذف می کنیم، زیرا کاربر از قبل می داند که به دنبال چه چیزی است.
  • به جای "خرید" - "فروش" به منظور متمایز شدن از رقبا که اکثر آنها می نویسند "خرید".
  • ما geo-add را ترک می کنیم، زیرا کاربر به دنبال یک پردازنده در یک شهر خاص است.

با استفاده از این نوع می توانید همه تبلیغات را برای یک فروشگاه آنلاین بسازید. تجهیزات کامپیوتر. یک الگوی معمولی "فروش [نام محصول] در [شهر] است."

همچنین به خاطر داشته باشید که:

  • هنگام جایگزینی در پیوند، فاصله با کاراکترهای %20 جایگزین می شود.
  • سیریلیک در پیوندها به طور خودکار در UTF-8 کدگذاری می شود. مهم است که سایت به درستی درخواست های موجود در این رمزگذاری را بپذیرد.
  • شما فقط می توانید یک کلمه کلیدی را در لینک اصلی وارد کنید، اما نه در لینک سریع.
  • هنگام تعویض، حالت حروف تغییر نمی کند. اگر بپرسید کلید واژه هابا یک حرف کوچک، اینگونه در تبلیغات ظاهر می شوند.

به عنوان مثال، اگر عنوان "در جستجوی یک #ماشین کارکرده# هستید؟" است، برای درج در الگو، عباراتی را با یک حرف کوچک می نویسیم: "یک ماشین دست دوم بخرید"، "یک ماشین دست دوم در پرم بخرید".

در منوی «تنظیمات برای کل گروه»، همه جایگزین‌ها را تنظیم کنید. برای نمایش آنها در قالب یک لیست، روی "انتخاب کلمات" کلیک کنید، موارد مورد نیاز خود را وارد کنید، سپس "ترتیب و شفاف سازی".


نحوه استفاده از قالب ها

بیایید به مثال یک گروه تبلیغاتی نگاه کنیم.

ما یک تبلیغ ایجاد می کنیم. فیلدها را پر کنید:


قالب ها صلاحیت رهبریبه شما امکان می دهد مخاطبین را بر اساس نوع و سطح تعامل آنها گروه بندی کنید (مثلاً بر اساس تعداد کلیک روی ایمیل ها). هنگامی که به مخاطبین امتیاز یا برچسب خاصی اختصاص داده شد، می توانید آنها را به کمپین دیگری منتقل کنید. با اطلاعاتی که از این اقدامات به دست می‌آورید، مطمئن خواهید بود که پیشنهادهایی را ارسال می‌کنید که مخاطبین شما را مورد علاقه قرار می‌دهد.

خط پایه را تگ کنید

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

طرح امتیازدهی پایه

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

پیشنهاد نسخه ی نمایشی

برای افزایش فروش می توانید از قالب استفاده کنید پیشنهاد نسخه ی نمایشی. می توان از آن برای ایجاد فرآیندی برای هدف قرار دادن مخاطبین واجد شرایط و افزودن آنها به مرحله خاصی از قیف CRM استفاده کرد. این فرآیند می تواند برای مخاطبین جدید و موجود استفاده شود:

  • مخاطبین موجود دعوتنامه ای دریافت می کنند که از آنها می خواهد علاقه خود را به نسخه ی نمایشی محصول تایید کنند.
  • مشترکین جدید ایمیلی برای تایید درخواست دمو خود دریافت می کنند.

گام آخر این است که مخاطبین را برچسب گذاری کنید تا آنها را برای کمپین ها و پست های بعدی شناسایی کنید.

این الگو توسط کارشناس تبدیل Talia Wolf تایید شده است.

برچسب زدن مخاطبین بر اساس امتیازات

برای افزایش تبدیل و فروش می توانید از قالب استفاده کنید برچسب زدن مخاطبین بر اساس امتیازات. این الگو به شما کمک می کند تا فرآیندی را ایجاد کنید که:

  • هنگامی که مخاطبین جدید در یک لیست پستی خاص مشترک می شوند فعال می شود.
  • برای زمان مشخصی منتظر می ماند تا مخاطبین تعداد امتیاز لازم را به دست آورند.
  • برچسب ها را بر اساس امتیازات اختصاص می دهد تا بتوانید سرنخ های آماده برای فروش را شناسایی کنید.

این الگو توسط کارشناس تبدیل Talia Wolf تایید شده است.