<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0">
<channel>
<title>کدهای کاربردی</title>
<link>https://www.rozblog.com/code/</link>
<description>در این سایت، مجموعه‌ای گسترده از کدهای کاربردی HTML، CSS و JavaScript برای طراحی سایت ارائه می‌شود. با استفاده از این کدها، می‌توانید به راحتی وب‌سایت‌های حرفه‌</description>
<language>fa</language>
<generator>https://www.rozblog.com/code/</generator>
<copyright>https://www.rozblog.com/code/</copyright>
<item>
<pubDate>Sun, 10 May 2026 16:56:00 +0330</pubDate>
<title>کد آماده برای ایجاد ایکون پشتیبانی</title>
<link>https://www.rozblog.com/code/%DA%A9%D8%AF-%D8%A2%D9%85%D8%A7%D8%AF%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D8%A7%DB%8C%DA%A9%D9%88%D9%86-%D9%BE%D8%B4%D8%AA%DB%8C%D8%A8%D8%A7%D9%86%DB%8C-trxhe</link>
<description>
<![CDATA[<pre class="language-markup"><code>&lt;RB:CB=69&gt;
&lt;RB:CBA=1&gt;
&lt;div class="support"&gt;
	&lt;a style="display: flex;align-items: center;" href="&lt;RB:CBC=لینک پشتیبانی=text&gt;#&lt;/RB:CBC&gt;" target="_blank"&gt;
    &lt;img src="&lt;RB:CBC=آدرس لوگو پشتیبانی=text&gt;https://rozup.ir/view/4041021/Telegram_logo.svg&lt;/RB:CBC&gt;" class="icon"&gt;
    &lt;div class="dial"&gt;
        &lt;div class="text"&gt;&lt;RB:CBC=متن=text&gt;online support&lt;/RB:CBC&gt;&lt;/div&gt;
        &lt;div class="subtext"&gt;&lt;RB:CBC=متن=text&gt;پشتیبانی آنلاین&lt;/RB:CBC&gt;&lt;/div&gt;
    &lt;/div&gt;
	&lt;/a&gt;
&lt;/div&gt;
&lt;/RB:CB&gt;
&lt;style&gt;
.support {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    direction: ltr;
    z-index: 9999;
}

.icon {
    width: 60px;
    height: 60px;
    display: block;
    z-index: 2;
    margin-right: -12px;
}

.dial {
    width: 195px;
    height: 44px;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(12px);
    border-radius: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: all 0.3s ease;
    cursor: pointer;
    margin-right: -168px;
    border: 1px solid #454545b3;
    padding: 6px 0;
    box-sizing: border-box;
}

.support:hover .dial {
    margin-right: 0;
}

.text {
    color: white;
    font-size: 15px;
    font-weight: bold;
    position: relative;
    top: 3px;
}

.subtext {
    color: #ededed;
    font-size: 10px;
    position: relative;
    bottom: 2px;
}
&lt;/style&gt;</code></pre><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/%DA%A9%D8%AF-%D8%A2%D9%85%D8%A7%D8%AF%D9%87-%D8%A8%D8%B1%D8%A7%DB%8C-%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D8%A7%DB%8C%DA%A9%D9%88%D9%86-%D9%BE%D8%B4%D8%AA%DB%8C%D8%A8%D8%A7%D9%86%DB%8C-trxhe</guid>
</item>
<item>
<pubDate>Sun, 22 Feb 2026 17:24:00 +0330</pubDate>
<title>کد آماده پنل کاربری برای کاربران سایت های رزبلاگ</title>
<link>https://www.rozblog.com/code/ready-made-user-panel-code-for-rozblog-site-users-owhui</link>
<description>
<![CDATA[<p>کد زیر را در هدر در بخش مخصوص خود جایگذاری کنید</p>
<p>در صورتی که میخواهید برای سایت استفاده کنید باید Shop_Url را به Url تغییر دهید</p>
<p></p>
<pre class="language-markup"><code>&lt;RB:User_Block&gt;&lt;RB:If_Login_Block&gt;

&lt;div class="user-button"&gt;
    &lt;div class="rb_dropdown"&gt;
        &lt;div class="rb_dropdown-toggle rb_user-dropdown"&gt;
            &lt;svg class="user svg"&gt;&lt;use xlink:href="#svg_user"&gt;&lt;/use&gt;&lt;/svg&gt;
            &lt;svg class="dropdown svg"&gt;&lt;use xlink:href="#svg_dropdown"&gt;&lt;/use&gt;&lt;/svg&gt;
        &lt;/div&gt;
        &lt;div class="rb_dropdown-menu rb_user-dropdown-menu"&gt;
            &lt;div class="rb_dropdown-item display-name"&gt;
                &lt;a href="[Login_Profile]"&gt;
                    &lt;img alt="" src="[Login_Avatar]" class="avatar avatar-30 photo" height="30" width="30" decoding="async"&gt;                         
                    &lt;span&gt;[Login_Name] عزیز&lt;/span&gt;
                    &lt;svg class="chevron svg"&gt;&lt;use xlink:href="#svg_chevron"&gt;&lt;/use&gt;&lt;/svg&gt;
                &lt;/a&gt;
            &lt;/div&gt;
            &lt;div class="rb_dropdown-item is-active"&gt;
                &lt;a href="[Shop_Url]Panel"&gt;
                    &lt;svg class="svg"&gt;&lt;use xlink:href="#svg_dashboard"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;span&gt;پیشخوان&lt;/span&gt;
                    &lt;svg class="chevron svg"&gt;&lt;use xlink:href="#svg_chevron"&gt;&lt;/use&gt;&lt;/svg&gt;
                &lt;/a&gt;
            &lt;/div&gt;
            &lt;div class="rb_dropdown-item"&gt;
                &lt;a href="[Shop_Url]Edit_Profile"&gt;
                    &lt;svg class="svg"&gt;&lt;use xlink:href="#svg_edit_profile"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;span&gt;ویرایش پروفایل&lt;/span&gt;
                    &lt;svg class="chevron svg"&gt;&lt;use xlink:href="#svg_chevron"&gt;&lt;/use&gt;&lt;/svg&gt;
                &lt;/a&gt;
            &lt;/div&gt;
            &lt;div class="rb_dropdown-item"&gt;
                &lt;a href="[Shop_Url]panel/orders"&gt;
                    &lt;svg class="svg"&gt;&lt;use xlink:href="#svg_orders"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;span&gt;لیست سفارشات&lt;/span&gt;
                    &lt;svg class="chevron svg"&gt;&lt;use xlink:href="#svg_chevron"&gt;&lt;/use&gt;&lt;/svg&gt;
                &lt;/a&gt;
            &lt;/div&gt;
            &lt;div class="rb_dropdown-item"&gt;
                &lt;a href="[Shop_Url]wishlist/"&gt;
                    &lt;svg class="svg"&gt;&lt;use xlink:href="#svg_favorites"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;span&gt;علاقه مندیها&lt;/span&gt;
                    &lt;svg class="chevron svg"&gt;&lt;use xlink:href="#svg_chevron"&gt;&lt;/use&gt;&lt;/svg&gt;
                &lt;/a&gt;
            &lt;/div&gt;
            &lt;div class="rb_dropdown-item"&gt;
                &lt;a href="[Shop_Url]add_edit_addres"&gt;
                    &lt;svg class="svg"&gt;&lt;use xlink:href="#svg_address"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;span&gt;مدیریت آدرس ها&lt;/span&gt;
                    &lt;svg class="chevron svg"&gt;&lt;use xlink:href="#svg_chevron"&gt;&lt;/use&gt;&lt;/svg&gt;
                &lt;/a&gt;
            &lt;/div&gt;
            &lt;div class="rb_dropdown-item"&gt;
                &lt;a href="[Shop_Url]logout"&gt;
                    &lt;svg class="svg"&gt;&lt;use xlink:href="#svg_logout"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;span&gt;خروج از حساب کاربری&lt;/span&gt;
                    &lt;svg class="chevron svg"&gt;&lt;use xlink:href="#svg_chevron"&gt;&lt;/use&gt;&lt;/svg&gt;
                &lt;/a&gt;
            &lt;/div&gt;
        &lt;/div&gt;
    &lt;/div&gt;
&lt;/div&gt;
&lt;/RB:If_Login_Block&gt;&lt;/RB:User_Block&gt;</code></pre>
<p>دمو</p>
<p><img src="https://rozup.ir/view/4201949/2026-02-22%2017%2028%2046.png" alt="" class="img_get_url"></p><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/ready-made-user-panel-code-for-rozblog-site-users-owhui</guid>
</item>
<item>
<pubDate>Sun, 22 Feb 2026 16:42:00 +0330</pubDate>
<title>کد آماده برای سبد خرید در فروشگاههای رزبلاگ بدون نیاز به کد نویسی</title>
<link>https://www.rozblog.com/code/ready-made-shopping-cart-code-for-rozblog-stores-without-coding-mjocw</link>
<description>
<![CDATA[<p>برای باز شدن منوی سبد خرید از کد زیر استفاده کنید</p>
<pre class="language-markup"><code>&lt;a scroll="150" scroll-time="2000" class=" fot_link pos_r rb-bs-btn" href="javascript:void(0)"&gt;
&lt;div class="rb_notify_cart"&gt;&lt;span class="rb_basket_total_count"&gt;9&lt;/span&gt;&lt;/div&gt;
&lt;svg class="fill_white add_wishlist" height="20" width="20"&gt;&lt;use xlink:href="#svg_basket"&gt;&lt;/use&gt;&lt;/svg&gt;&lt;div&gt;سبد خرید&lt;/div&gt;&lt;/a&gt;</code></pre>
<p>کد زیر را در انتهای قالب خود یا در قالب هدر یا فوتر فروشگاه قرار بدید</p>
<pre class="language-markup"><code>&lt;RB:Product_Cart_Block&gt;
&lt;li class="rb-bs-wrapper"&gt;


    &lt;!-- پنل کشویی سبد خرید --&gt;
    &lt;div class="rb-bs-drawer" id="rb-bs-drawer"&gt;
        &lt;div class="rb-bs-content"&gt;
            &lt;!-- هدر: عنوان و دکمه بستن --&gt;
            &lt;div class="rb-bs-header"&gt;
                &lt;h3&gt;سبد خرید&lt;/h3&gt;
                &lt;button class="rb-bs-close" id="rb-bs-close"&gt;
                    &lt;svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;
                        &lt;line x1="18" y1="6" x2="6" y2="18"&gt;&lt;/line&gt;
                        &lt;line x1="6" y1="6" x2="18" y2="18"&gt;&lt;/line&gt;
                    &lt;/svg&gt;
                &lt;/button&gt;
            &lt;/div&gt;

            &lt;!-- لیست محصولات --&gt;
            &lt;ul class="rb-bs-list"&gt;
                &lt;RB:Product_Cart_Loop&gt;
                &lt;li class="rb-bs-item"&gt;
                    &lt;div class="rb-bs-img-box"&gt;
                        &lt;a href="[Product_Cart_Link]"&gt;
                            &lt;img src="[Product_Cart_Img]" alt="[Product_Cart_Title]"&gt;
                        &lt;/a&gt;
                    &lt;/div&gt;
                    &lt;div class="rb-bs-info"&gt;
                        &lt;h4&gt;&lt;a href="[Product_Cart_Link]"&gt;[Product_Cart_Title]&lt;/a&gt;&lt;/h4&gt;
                        &lt;p class="rb-bs-meta"&gt;1عدد - &lt;RB:Discount&gt;&lt;del&gt;[Discount]&lt;/del&gt;&lt;/RB:Discount&gt; &lt;span class="rb-bs-price main-color-one-color"&gt;[Product_Cart_Price] تومان&lt;/span&gt;&lt;/p&gt;
                    &lt;/div&gt;
                    &lt;a href="#" onclick="update_basket([Product_Cart_Id],'del')" class="rb-bs-remove" title="حذف"&gt;
                        &lt;svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"&gt;
                            &lt;line x1="18" y1="6" x2="6" y2="18"&gt;&lt;/line&gt;
                            &lt;line x1="6" y1="6" x2="18" y2="18"&gt;&lt;/line&gt;
                        &lt;/svg&gt;
                    &lt;/a&gt;
                &lt;/li&gt;
                &lt;/RB:Product_Cart_Loop&gt;
            &lt;/ul&gt;

            &lt;!-- حالت خالی بودن سبد --&gt;
            &lt;RB:Cart_Empty_Block&gt;
            &lt;div class="rb-bs-empty"&gt;
                &lt;svg xmlns="http://www.w3.org/2000/svg" width="100" height="120" viewBox="0 0 84 133"&gt;
                    &lt;defs&gt; &lt;filter id="a" width="111.8%" height="250%" x="-5.9%" y="-75%" filterUnits="objectBoundingBox"&gt; &lt;feGaussianBlur in="SourceGraphic" stdDeviation="1"/&gt;&lt;/filter&gt;&lt;/defs&gt;
                    &lt;g fill="none" fill-rule="evenodd" transform="translate(-3 -8)"&gt;
                        &lt;path stroke="#ccc" stroke-linecap="round" stroke-width="3" d="M51.125 14.616L29.508 9.888a7 7 0 0 0-8.03 4.33L5.126 56.815A7 7 0 0 0 8.188 65.4l38.773 22.157a3 3 0 0 0 4.29-1.53l24.056-62.67a3 3 0 0 0-2.16-4.006l-14.96-3.268"/&gt;
                        &lt;path stroke="#ccc" stroke-linecap="round" stroke-width="3" d="M50.63 67.48l6.747 2.59c8.492 3.26 18.018-.982 21.278-9.473 3.26-8.492-.982-18.018-9.474-21.278l-13.773-5.287M53.643 68.637l-3.504-1.345M46.174 65.77l-2.57-.987"/&gt;
                        &lt;ellipse cx="46.5" cy="137" fill="#E0E0E0" filter="url(#a)" opacity=".499" rx="25.5" ry="2"/&gt;
                        &lt;path stroke="#ddd" stroke-dasharray="3,3" stroke-linecap="round" d="M60.009 79.954c17.306 3.827 30.777 36.869 6.48 30.04-12.144-3.412-3.234-19.224 6.759-10.71 4.204 3.583 4.002 10.797-.606 21.641M73.505 76.977c4.662 1.116 9.014 4.345 12.406 8.317"/&gt;
                    &lt;/g&gt;
                &lt;/svg&gt;
                &lt;p&gt;سبد خرید شما خالی است!&lt;/p&gt;
            &lt;/div&gt;
            &lt;/RB:Cart_Empty_Block&gt;

            &lt;!-- فوتر: جمع کل و دکمه نهایی (همیشه ثابت در پایین) --&gt;
            &lt;RB:Cart_Total_Price_Block&gt;
            &lt;div class="rb-bs-footer"&gt;
                &lt;div class="rb-bs-total-row"&gt;
                    &lt;span&gt;جمع کل:&lt;/span&gt;
                    &lt;span class="rb-bs-total-amount"&gt;[Cart_Total_Price] تومان&lt;/span&gt;
                &lt;/div&gt;
                &lt;a href="[Shop_Cart_Url]" class="rb-bs-checkout"&gt;مشاهده سبد خرید&lt;/a&gt;
            &lt;/div&gt;
            &lt;/RB:Cart_Total_Price_Block&gt;
        &lt;/div&gt;
    &lt;/div&gt;
&lt;/li&gt;

&lt;!-- اسکریپت باز و بسته کردن --&gt;

&lt;/RB:Product_Cart_Block&gt;</code></pre>
<p>عکس از سبد خرید آماده</p>
<p><img src="https://rozup.ir/view/4201944/2026-02-22%2017%2021%2019.png" alt="" class="img_get_url"></p><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/ready-made-shopping-cart-code-for-rozblog-stores-without-coding-mjocw</guid>
</item>
<item>
<pubDate>Sun, 18 May 2025 02:47:00 +0330</pubDate>
<title>مجموعه آیکوهای شبکه های اجتماعی ایرانی و خارجی</title>
<link>https://www.rozblog.com/code/collection-of-iranian-and-international-social-media-icons-txxyb</link>
<description>
<![CDATA[<p>لیست آیکون های شبکه اجتماعی با پسوند PNG و SVG</p>
<ol start="1">
<li>
<p><span><strong>تلگرام (Telegram)</strong></span></p>
</li>
<li>
<p><span><strong>واتس&zwnj;اپ (WhatsApp)</strong></span></p>
</li>
<li>
<p><span><strong>ایتا (Eitaa)</strong></span></p>
</li>
<li>
<p><span><strong>آپارات (Aparat)</strong></span></p>
</li>
<li>
<p><span><strong>آی&zwnj;فیلو (iFilo)</strong></span></p>
</li>
<li>
<p><span><strong>روبیکا (Rubika)</strong></span></p>
</li>
<li>
<p><span><strong>سروش&zwnj;پلاس (Splus)</strong></span></p>
</li>
<li>
<p><span><strong>آی&zwnj;گپ (iGap)</strong></span></p>
</li>
<li>
<p><span><strong>گپ (Gap)</strong></span></p>
</li>
<li>
<p><span><strong>بله (Bale)</strong></span></p>
</li>
</ol>
<div class="social-icons"><a href="https://t.me/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041021/Telegram_logo.svg" alt="Telegram" width="24" height="24"> </a> <a href="https://whatsapp.com/channel/0029Vb2MASXEKyZNZNxgkd0Q" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041019/1650987369_whatsapp-icon-design.jpg" alt="Whatsapp" width="24" height="24"> </a> <a href="https://eitaa.com/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041017/eitaa_logo.svg" alt="eitaa" width="24" height="24"> </a> <a href="https://aparat.com/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041018/Aparat.png" alt="Aparat" width="24" height="24"> </a> <a href="https://ifilo.net/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041016/ifilo.png" alt="iFilo" width="24" height="24"> </a> <a href="https://rubika.ir/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041013/rubika-icon.png" alt="Rubika" width="24" height="24"> </a> <a href="https://splus.ir/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041020/soroush-icon.png" alt="Splus" width="24" height="24"> </a> <a href="https://igap.net/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041014/igap-icon.png" alt="iGap" width="24" height="24"> </a> <a href="https://gap.im/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041015/Gap-icon.png" alt="Gap" width="24" height="24"> </a> <a class="end_s" href="https://ble.ir/" target="_blank" rel="noopener"> <img src="https://rozup.ir/view/4041012/bale-icon.png" alt="Bale" width="24" height="24"> </a></div>
<style>
    .social-icons{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:15px;border:1px solid #c7c7c7;width:fit-content;margin:10px auto;border-radius:2px;padding:0px;}
    .social-icons a{margin:0;padding:0;display:flex;border-left:1px solid #c7c7c7;padding-left:7px;}
    .social-icons a.end_s{border-left:0;padding-left:0;}
    .social-icons img{width:24px;height:24px;transition:transform 0.3s;}
    .social-icons img:hover{transform:scale(1.2);}
    </style>
<p>کد html</p>
<pre class="language-markup"><code>&lt;div class="social-icons"&gt;
  &lt;a href="https://t.me/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041021/Telegram_logo.svg" alt="Telegram" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://whatsapp.com/channel/0029Vb2MASXEKyZNZNxgkd0Q" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041019/1650987369_whatsapp-icon-design.jpg" alt="Whatsapp" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://eitaa.com/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041017/eitaa_logo.svg" alt="eitaa" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://aparat.com/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041018/Aparat.png" alt="Aparat" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://ifilo.net/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041016/ifilo.png" alt="iFilo" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://rubika.ir/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041013/rubika-icon.png" alt="Rubika" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://splus.ir/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041020/soroush-icon.png" alt="Splus" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://igap.net/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041014/igap-icon.png" alt="iGap" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a href="https://gap.im/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041015/Gap-icon.png" alt="Gap" width="24" height="24"&gt;
  &lt;/a&gt;
  &lt;a class="end_s" href="https://ble.ir/" target="_blank"&gt;
    &lt;img src="https://rozup.ir/view/4041012/bale-icon.png" alt="Bale" width="24" height="24"&gt;
  &lt;/a&gt;
&lt;/div&gt;
&lt;style&gt;
.social-icons{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:15px;border:1px solid #c7c7c7;width:fit-content;margin:10px auto;border-radius:2px;padding:10px;}
.social-icons a{margin:0;padding:0;display:flex;border-left:1px solid #c7c7c7;padding-left:7px;}
.social-icons a.end_s{border-left:0;padding-left:0;}
.social-icons img{width:24px;height:24px;transition:transform 0.3s;}
.social-icons img:hover{transform:scale(1.2);}
&lt;/style&gt;</code></pre><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/collection-of-iranian-and-international-social-media-icons-txxyb</guid>
</item>
<item>
<pubDate>Tue, 29 Apr 2025 02:49:00 +0330</pubDate>
<title>نحوه طراحی PWA به صورت اینلاین بدون نیاز به فایل Manifest.js و نصب اپلیکیشن برای سایت</title>
<link>https://www.rozblog.com/code/how-to-design-pwa-inline-without-manifest-js-and-install-app-for-website-ldsli</link>
<description>
<![CDATA[<p><span>اگر می&zwnj;خواهید <strong>یک اپلیکیشن وب پیشرفته (PWA)</strong> بدون استفاده از <strong>فایل جداگانه </strong><code>manifest.json</code> طراحی کنید، می&zwnj;توانید اطلاعات مانیفست را <strong>به&zwnj;صورت اینلاین در HTML</strong> قرار داده و آن را در <strong>جاوا اسکریپت پردازش کنید</strong>.</span></p>
<p><span>✅ <strong>مراحل کلی</strong></span></p>
<p><span>1️⃣ اضافه کردن مانیفست اینلاین در HTML در کدهای قالب</span></p>
<p><span>2️⃣ رفتن به قسمت قالب &gt; تنظیمات قالب</span></p>
<p><span>3️⃣ ست کردن اسم اپلیکیشن و لوگو و دیگر تنظیمات اپ</span></p>
<p><span>4️⃣ باز کردن سایت در مرورگر گوشی و نصب اپلیکیشن</span></p>
<p><span>5️⃣ تست اپلیکیشن و بررسی عملکرد PWA</span></p>
<div></div>
<p><span>🔹 <strong>مرحله 1</strong> اضافه کردن مانیفست اینلاین در HTML</span></p>
<pre class="language-markup"><code>&lt;RB:Condition&gt;
&lt;RB:IF:[RB:Is_Tablet_Mobile]==true&gt;
&lt;RB:CB=0&gt;&lt;RB:CBT=تنظیمات نصب اپلیکیشن سایت&gt;&lt;RB:CBA=1&gt;
&lt;RB:VAR:cookie_name&gt;&lt;RB:CBC=در صورتی که میخواهد اعلان نصب رست شود و دوباره نمایش داده شود این اسم را تغییر دهید=text&gt;appInstalled3&lt;/RB:CBC&gt;&lt;/RB:VAR&gt;
&lt;script&gt;
	// --- Manifest JSON ---
	const manifestJSON = {
	    "name": "&lt;RB:CBC=عنوان اپلیکیشن میتواند عنوان سایت باشد=text&gt;عنوان سایت&lt;/RB:CBC&gt;",
	    "short_name": "&lt;RB:CBC=اسم اپلیکیشن میتواند ادرس سایت باشد=text&gt;rozblog.com&lt;/RB:CBC&gt;",
	    "start_url": "/",
	    "display": "standalone",
	    "background_color": "&lt;RB:CBC=کد رنگ بکگراند سایت=text&gt;#ffffff&lt;/RB:CBC&gt;",
	    "theme_color": "&lt;RB:CBC=کد رنگ اصلی قالب=text&gt;#ffffff&lt;/RB:CBC&gt;",
	    "icons": [{
	            "src": "&lt;RB:CBC=لوگو در اندازه 192x192=text&gt;https://www.rozblog.com/theme/rozblog_v6/img/logo.png&lt;/RB:CBC&gt;",
	            "sizes": "192x192",
	            "type": "image/png"
	        },
	        {
	            "src": "&lt;RB:CBC=لوگو در اندازه 512x512=text&gt;https://www.rozblog.com/theme/rozblog_v6/img/logo.png&lt;/RB:CBC&gt;",
	            "sizes": "512x512",
	            "type": "image/png"
	        }
	    ]
	};

	const manifestBlob = new Blob([JSON.stringify(manifestJSON)], {
	    type: "application/json"
	});
	const manifestURL = URL.createObjectURL(manifestBlob);

	document.addEventListener('DOMContentLoaded', () =&gt; {
	    // اضافه کردن Manifest به DOM
	    const link = document.createElement("link");
	    link.rel = "manifest";
	    link.href = manifestURL;
	    document.head.appendChild(link);

	    // ثبت Service Worker
	    if ('serviceWorker' in navigator) {
	        navigator.serviceWorker.register('https://rozup.ir/view/4030783/service-worker.js')
	            .then((registration) =&gt; {
	                console.log('Service Worker registered with scope:', registration.scope);
	            })
	            .catch((error) =&gt; {
	                console.error('Service Worker registration failed:', error);
	            });
	    }

	    // --- Install Prompt Event ---
	    let deferredPrompt;

	    // بررسی Local Storage برای نمایش دکمه نصب
	    const installButton = document.createElement('button');
	    installButton.innerText = '&lt;RB:CBC=عنوان دکمه نصب=text&gt;نصب اپلیکیشن&lt;/RB:CBC&gt;';
	    installButton.style.position = 'fixed';
	    installButton.style.bottom = '20px';
	    installButton.style.right = '20px';
	    installButton.style.zIndex = '1000';
	    installButton.style.padding = '10px 20px';
	    installButton.style.backgroundColor = '#007bff';
	    installButton.style.color = '#fff';
	    installButton.style.border = 'none';
	    installButton.style.borderRadius = '5px';
	    installButton.style.cursor = 'pointer';
	    installButton.style.display = 'none';

	    // اگر کاربر قبلاً نصب کرده باشد، دکمه نمایش داده نشود
	    if (localStorage.getItem('[RB:VAR:cookie_name]') === 'true') {
	        installButton.style.display = 'none';
	    } else {
	        installButton.style.display = 'block';
	    }

	    installButton.addEventListener('click', () =&gt; {
	        if (deferredPrompt) {
	            deferredPrompt.prompt();
	            deferredPrompt.userChoice.then((choiceResult) =&gt; {
	                if (choiceResult.outcome === 'accepted') {
	                    console.log('User accepted the install prompt');
	                    // ذخیره وضعیت نصب در Local Storage
	                    localStorage.setItem('[RB:VAR:cookie_name]', 'true');
	                    installButton.style.display = 'none'; // دکمه را پس از نصب مخفی کن
	                } else {
	                    console.log('User dismissed the install prompt');
	                }
	                deferredPrompt = null;
	            });
	        }
	    });

	    document.body.appendChild(installButton);

	    // نمایش دکمه نصب اگر رویداد BeforeInstallPrompt فعال شود
	    window.addEventListener('beforeinstallprompt', (event) =&gt; {
	        event.preventDefault();
	        deferredPrompt = event;

	        // اگر کاربر قبلاً نصب نکرده باشد، دکمه نصب نمایش داده شود
	        if (localStorage.getItem('[RB:VAR:cookie_name]') !== 'true') {
	            installButton.style.display = 'block';
	        }
	    });
	});
&lt;/script&gt;
&lt;/RB:CB&gt;
&lt;/RB:IF&gt;
&lt;/RB:Condition&gt;</code></pre>
<p><span>🔹 <strong>مرحله 2</strong> اضافه کردن کد به قسمت HEAD ویرایش قالب.</span></p>
<p><span>🔹 <strong>مرحله 3</strong> کپی کدهای زیر در نوت پد و تغییر ادرس logo فعلی در کد با لوگو سایت خود و ذخیره با نام service-worker.js</span></p>
<p>و در نهایت آپلود فایل ذخیره شده در رزاپ و اضافه کردن به کد بالا به جای service-worker.js فعلی</p>
<pre class="language-markup"><code>const CACHE_NAME = 'pwa-rozblog-v1';
const REQUIRED_FILES = [
  '/',
  'https://www.rozblog.com/theme/rozblog_v6/img/logo.png'
];
// نصب Service Worker و ذخیره فایل&zwnj;های ضروری در Cache
self.addEventListener('install', (event) =&gt; {
  event.waitUntil(
    caches.open(CACHE_NAME).then((cache) =&gt; {
      console.log('Caching required files...');
      return cache.addAll(REQUIRED_FILES);
    })
  );
});

self.addEventListener('fetch', (event) =&gt; {
  const url = new URL(event.request.url);

  // فقط فایل&zwnj;های استاتیک را کش کن، نه صفحات HTML
  if (
    url.pathname.endsWith('.jpg') ||
    url.pathname.endsWith('.png') ||
    url.pathname.endsWith('.webp') ||
    url.pathname.endsWith('.css') ||
    url.pathname.endsWith('.js')
  ) {
    event.respondWith(
      caches.match(event.request).then((response) =&gt; {
        if (response) {
          return response;
        }
        return fetch(event.request).then((response) =&gt; {
          if (!response || response.status !== 200 || response.type !== 'basic') {
            return response;
          }
          const responseToCache = response.clone();
          caches.open(CACHE_NAME).then((cache) =&gt; {
            cache.put(event.request, responseToCache);
          });
          return response;
        });
      })
    );
  } else {
    // برای درخواست&zwnj;های دیگر، آن&zwnj;ها را مستقیماً از شبکه دریافت کن
    event.respondWith(fetch(event.request));
  }
});

self.addEventListener('activate', (event) =&gt; {
  const cacheWhitelist = [CACHE_NAME];
  event.waitUntil(
    caches.keys().then((cacheNames) =&gt; {
      return Promise.all(
        cacheNames.map((cacheName) =&gt; {
          if (!cacheWhitelist.includes(cacheName)) {
            return caches.delete(cacheName);
          }
        })
      );
    })
  );
});</code></pre>
<p><span>✅ این روش <strong>مانیفست را مستقیم درون HTML اضافه می&zwnj;کند</strong>، بدون نیاز به فایل جداگانه. ✅ مرورگر <strong>این داده را به&zwnj;عنوان </strong><code>manifest</code><strong> شناسایی</strong> کرده و قابلیت نصب PWA را فراهم می&zwnj;کند.</span></p>
<p><span>اضافه کردن دکمه جدا برای نصب اپلیکیشن و حذف ان در نسخه اپلیکیشن</span></p>
<p><span>کد html</span><span></span></p>
<pre class="language-markup"><code>&lt;a id="installPWA_Menu" class="" href="#"&gt;&lt;span class="link-text"&gt;نصب اپلیکیشن&lt;/span&gt;&lt;/a&gt;</code></pre>
<pre class="language-markup"><code>let deferredPrompt_Menu;

window.addEventListener('beforeinstallprompt', (event) =&gt; {
    event.preventDefault(); // جلوگیری از نمایش خودکار پیام نصب
    deferredPrompt_Menu = event; // ذخیره درخواست نصب برای دکمه&zwnj;ی منو
    document.getElementById('installPWA_Menu').style.display = 'block'; // نمایش دکمه
});

document.getElementById('installPWA_Menu').addEventListener('click', (event) =&gt; {
    event.preventDefault(); // جلوگیری از تغییر مسیر لینک
    if (deferredPrompt_Menu) {
        deferredPrompt_Menu.prompt(); // نمایش پنجره نصب PWA
        deferredPrompt_Menu.userChoice.then((choiceResult) =&gt; {
            if (choiceResult.outcome === 'accepted') {
                console.log('کاربر PWA را نصب کرد (منو).');
            } else {
                console.log('کاربر نصب PWA را رد کرد (منو).');
            }
            deferredPrompt_Menu = null;
        });
    }
});


function isPWAInstalled() {
    return (window.matchMedia('(display-mode: standalone)').matches || window.navigator.standalone);
}

document.addEventListener('DOMContentLoaded', () =&gt; {
    const installButton = document.getElementById('installPWA_Menu');

    if (isPWAInstalled()) {
        installButton.style.display = 'none';
    }
});</code></pre><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/how-to-design-pwa-inline-without-manifest-js-and-install-app-for-website-ldsli</guid>
</item>
<item>
<pubDate>Sat, 22 Feb 2025 23:21:00 +0330</pubDate>
<title>ایجاد انیمیشن فایروورک (فشفشه و بمب ذرات انفجاری) با HTML5 Canvas و JavaScript</title>
<link>https://www.rozblog.com/code/%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D8%A7%D9%86%DB%8C%D9%85%DB%8C%D8%B4%D9%86-%D9%81%D8%A7%DB%8C%D8%B1%D9%88%D9%88%D8%B1%DA%A9-%D9%81%D8%B4%D9%81%D8%B4%D9%87-%D9%88-%D8%A8%D9%85%D8%A8-%D8%B0%D8%B1%D8%A7%D8%AA-%D8%A7%D9%86%D9%81%D8%AC%D8%A7%D8%B1%DB%8C-%D8%A8%D8%A7-html5-canvas-%D9%88-javas-fixfk</link>
<description>
<![CDATA[<div data-spm-anchor-id="5aebb161.2ef5001f.0.i899.3d1bc921IDBAVs">
<p data-spm-anchor-id="5aebb161.2ef5001f.0.i901.3d1bc921IDBAVs">اگر به دنبال ایجاد یک انیمیشن زیبا و جذاب فایروورک برای وب&zwnj;سایت خود هستید، استفاده از HTML5 Canvas و JavaScript یک راه حل مناسب است. در این کد، ما یک انیمیشن فایروورک پویا و پر رنگ طراحی کرده&zwnj;ایم که به صورت تصادفی ذرات رنگی را در تمامی صفحه نمایش می&zwnj;دهد.</p>
<div class="my-2"></div>
<p>این انیمیشن شامل تنظیماتی مثل سرعت ذرات، شعاع آن&zwnj;ها، و رنگ&zwnj;های مختلف است که به شما اجازه می&zwnj;دهد تا انیمیشن را به دلخواه خود شخصی&zwnj;سازی کنید. علاوه بر این، کاربران می&zwnj;توانند با کلیک روی صفحه، فایروورک&zwnj;های جدیدی را ایجاد کنند.</p>
<div class="my-2"></div>
<p data-spm-anchor-id="5aebb161.2ef5001f.0.i903.3d1bc921IDBAVs">کد ارائه شده بهینه&zwnj;سازی شده است و شامل توابعی برای مدیریت اندازه صفحه، ایجاد ذرات با رنگ&zwnj;های مختلف، و حذف ذرات بعد از رسیدن به انتهای صفحه است. با استفاده از این کد، می&zwnj;توانید یک تجربه بصری جذاب و تعاملی برای کاربران وب&zwnj;سایت خود ایجاد کنید.</p>
<div class="my-2"></div>
<h4>ویژگی&zwnj;های کد:</h4>
<ul>
<li><strong>پر رنگ بودن: </strong>هر ذره فایروورک رنگ تصادفی متفاوتی دارد.</li>
<li><strong>تعامل کاربری: </strong>کاربران می&zwnj;توانند با کلیک روی canvas، فایروورک&zwnj;های جدیدی را ایجاد کنند.</li>
<li><strong>پشتیبانی از اندازه&zwnj;گیری دینامیک: </strong>انیمیشن به صورت خودکار به اندازه صفحه مرورگر سازگار می&zwnj;شود.</li>
<li><strong>سازگاری با مرورگرهای مختلف: </strong>استفاده از <code class="codespan cursor-pointer">requestAnimationFrame</code> برای اطمینان از عملکرد بهینه در تمام مرورگرهای مدرن.</li>
</ul>
<div class="my-2"></div>
<p>با استفاده از این کد، می&zwnj;توانید وب&zwnj;سایت خود را با یک انیمیشن جذاب و پویا تزئین کنید که توجه کاربران را به خود جلب می&zwnj;کند.</p>
<h3 style="text-align: center;"><a href="http://code.rozblog.com/page/%D8%AF%D9%85%D9%88%DB%8C%20%D9%81%D8%B4%D9%81%D8%B4%D9%87%20%D9%88%20%D8%A8%D9%85%D8%A8%20%D8%A7%D9%86%D9%81%D8%AC%D8%A7%D8%B1%DB%8C%20%D8%A8%D8%B1%D8%A7%DB%8C%20%D8%AC%D8%B4%D9%86" rel="follow noopener" target="_blank">دموی این کد</a></h3>
<p>کد</p>
<pre class="language-markup"><code>&lt;style&gt;
        #canvas {
            display: block;
            position: fixed;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            pointer-events: none; /* اجازه دادن به کاربر برای تعامل با عناصر زیر canvas */
        }
&lt;/style&gt;
&lt;canvas id="canvas"&gt;&lt;/canvas&gt;
&lt;script&gt;



// تعریف متغیرها
var canvas, ctx, w, h, particles = [], probability = 0.04,
    xPoint, yPoint, stopAnimation = false;

// تعریف requestAnimationFrame برای سازگاری با مرورگرهای قدیمی
window.requestAnimationFrame =
    window.requestAnimationFrame ||
    window.webkitRequestAnimationFrame ||
    window.mozRequestAnimationFrame ||
    window.oRequestAnimationFrame ||
    window.msRequestAnimationFrame ||
    function (callback) {
        window.setTimeout(callback, 1000 / 60);
    };

// تابع اصلی برای شروع
function onLoad() {
    canvas = document.getElementById("canvas");
    if (!canvas || !canvas.getContext) {
        console.error("Canvas not supported or not found!");
        return;
    }
    ctx = canvas.getContext("2d");

    // تنظیم اندازه canvas
    resizeCanvas();

    // شروع انیمیشن
    window.requestAnimationFrame(updateWorld);

    // تنظیم تایمر برای توقف بعد از 10 ثانیه
    setTimeout(function () {
        stopAnimation = true;
        document.getElementById("canvas").style.display = 'none';
    }, 100000); // 10 ثانیه
}

// تابع برای تنظیم اندازه canvas
function resizeCanvas() {
    if (!!canvas) {
        w = canvas.width = window.innerWidth;
        h = canvas.height = window.innerHeight;
    }
}

// تابع اصلی برای به&zwnj;روزرسانی جهان
function updateWorld() {
    if (!stopAnimation) {
        update();
        paint();
        window.requestAnimationFrame(updateWorld);
    }
}

// تابع برای به&zwnj;روزرسانی ذرات
function update() {
    if (particles.length &lt; 500 &amp;&amp; Math.random() &lt; probability) {
        createFirework();
    }

    var alive = [];
    for (var i = 0; i &lt; particles.length; i++) {
        if (particles[i].move()) {
            alive.push(particles[i]);
        }
    }
    particles = alive;
}

// تابع برای رسم انیمیشن
function paint() {
    ctx.globalCompositeOperation = 'source-over';
    ctx.clearRect(0, 0, w, h); // پاک کردن تمام محتوای قبلی
    ctx.globalCompositeOperation = 'lighter';

    for (var i = 0; i &lt; particles.length; i++) {
        particles[i].draw(ctx);
    }
}

// تابع برای ایجاد فایروورک
function createFirework() {
    xPoint = Math.random() * (w - 200) + 100;
    yPoint = Math.random() * (h - 200) + 100;

    var nFire = Math.random() * 50 + 100;

    for (var i = 0; i &lt; nFire; i++) {
        var particle = new Particle();
        particle.color = getRandomColor(); // هر ذره رنگ تصادفی متفاوتی دارد
        var vy = Math.sqrt(25 - particle.vx * particle.vx);
        if (Math.abs(particle.vy) &gt; vy) {
            particle.vy = particle.vy &gt; 0 ? vy : -vy;
        }
        particles.push(particle);
    }
}

// تعریف کلاس ذرت
function Particle() {
    this.w = this.h = Math.random() * 4 + 1;
    this.x = xPoint - this.w / 2;
    this.y = yPoint - this.h / 2;
    this.vx = (Math.random() - 0.5) * 10;
    this.vy = (Math.random() - 0.5) * 10;
    this.alpha = Math.random() * .5 + .5;
    this.color; // رنگ ذره
}

// متد&zwnj;های ذرت
Particle.prototype = {
    gravity: 0.05,
    move: function () {
        this.x += this.vx;
        this.vy += this.gravity;
        this.y += this.vy;
        this.alpha -= 0.01;

        if (this.x &lt;= -this.w || this.x &gt;= w ||
            this.y &gt;= h ||
            this.alpha &lt;= 0) {
            return false;
        }
        return true;
    },
    draw: function (c) {
        c.save();
        c.beginPath();
        c.translate(this.x + this.w / 2, this.y + this.h / 2);
        c.arc(0, 0, this.w, 0, Math.PI * 2);
        c.fillStyle = this.color; // استفاده از رنگ ذره
        c.globalAlpha = this.alpha;
        c.closePath();
        c.fill();
        c.restore();
    }
};

// تابع برای تولید رنگ تصادفی پر رنگ
function getRandomColor() {
    var colors = [
        "rgb(255, 0, 0)",    // قرمز
        "rgb(0, 255, 0)",    // سبز
        "rgb(0, 0, 255)",    // آبی
        "rgb(255, 255, 0)",  // زرد
        "rgb(255, 0, 255)",  // بنفش
        "rgb(0, 255, 255)",  // آبی آسمانی
        "rgb(255, 165, 0)",  // نارنجی
        "rgb(128, 0, 128)"   // بنفش تیره
    ];
    return colors[Math.floor(Math.random() * colors.length)];
}

// اضافه کردن رویداد کلیک به document
document.addEventListener("click", function (event) {
    if (event.target.tagName === "CANVAS") {
        createFirework(); // ایجاد فایروورک جدید
    }
});

// اجرای تابع onLoad بعد از بارگذاری صفحه
window.addEventListener("DOMContentLoaded", onLoad);
&lt;/script&gt;</code></pre>
<p></p>
</div>
<div class="absolute rounded-lg mt-1 text-xs z-[9999]">
<div class="flex flex-row gap-0.5 shrink-0 p-1 bg-white dark:bg-gray-850 dark:text-gray-100 text-medium rounded-lg shadow-xl"></div>
</div><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/%D8%A7%DB%8C%D8%AC%D8%A7%D8%AF-%D8%A7%D9%86%DB%8C%D9%85%DB%8C%D8%B4%D9%86-%D9%81%D8%A7%DB%8C%D8%B1%D9%88%D9%88%D8%B1%DA%A9-%D9%81%D8%B4%D9%81%D8%B4%D9%87-%D9%88-%D8%A8%D9%85%D8%A8-%D8%B0%D8%B1%D8%A7%D8%AA-%D8%A7%D9%86%D9%81%D8%AC%D8%A7%D8%B1%DB%8C-%D8%A8%D8%A7-html5-canvas-%D9%88-javas-fixfk</guid>
</item>
<item>
<pubDate>Sun, 09 Feb 2025 02:00:00 +0330</pubDate>
<title>کد استیکی کردن هدر با جاوا اسکریپت و css</title>
<link>https://www.rozblog.com/code/%DA%A9%D8%AF-%D8%A7%D8%B3%D8%AA%DB%8C%DA%A9%DB%8C-%DA%A9%D8%B1%D8%AF%D9%86-%D9%87%D8%AF%D8%B1-%D8%A8%D8%A7-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D9%88-css-ryucu</link>
<description>
<![CDATA[<p>امروزه طراحی وبسایت&zwnj;ها به&zwnj;گونه&zwnj;ای است که تجربه کاربری بهبود یابد و کاربران به راحتی به بخش&zwnj;های مختلف سایت دسترسی داشته باشند. یکی از عناصر مهم در طراحی وبسایت، منوی ناوبری است که می&zwnj;تواند به کاربران کمک کند تا به سرعت به بخش&zwnj;های مختلف سایت دسترسی پیدا کنند. یکی از روش&zwnj;های محبوب برای بهبود تجربه کاربری، استفاده از منوی استیکی است که همیشه در بالای صفحه باقی می&zwnj;ماند. در این مقاله، به نحوه&zwnj;ی استفاده از جاوااسکریپت و CSS برای ایجاد منوی استیکی که بر اساس اسکرول کاربران مخفی و ظاهر می&zwnj;شود، می&zwnj;پردازیم.</p>
<p>برای شروع، نیاز به دو عنصر اصلی داریم: یک منوی اصلی که به صورت ثابت در بالای صفحه قرار می&zwnj;گیرد و یک منوی استیکی که در هنگام اسکرول به پایین نمایش داده می&zwnj;شود. با استفاده از جاوااسکریپت خالص، می&zwnj;توانیم رفتار منوها را بر اساس موقعیت اسکرول تنظیم کنیم.</p>
<h3 style="text-align: center;"><a href="http://code.rozblog.com/page/%D8%AF%D9%85%D9%88%DB%8C%20%D9%87%D8%AF%D8%B1%20%D8%A7%D8%B3%D8%AA%DB%8C%DA%A9%DB%8C%20%D8%A8%D8%A7%20%D8%AC%D8%A7%D9%88%D8%A7%20%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA%20%D9%88%20css" rel="follow noopener" target="_blank"><strong>دمو</strong></a></h3>
<p>کد</p>
<p></p>
<pre class="language-markup"><code>&lt;!DOCTYPE html&gt;
&lt;html lang="fa"&gt;
&lt;head&gt;
    &lt;meta charset="UTF-8"&gt;
    &lt;meta name="viewport" content="width=device-width, initial-scale=1.0"&gt;
    &lt;title&gt;Document&lt;/title&gt;
    &lt;style&gt;
        .header {
            background: #333;
            color: #fff;
            padding: 10px;
            transition: background 0.2s ease-in-out;
			width:100%;
        }

		.header.is-sticky {
			position: fixed;
			box-shadow: 0 5px 16px rgba(0, 0, 0, 0.1);
			padding: 8px 0;
			-webkit-backdrop-filter: blur(10px);
			backdrop-filter: blur(10px);
			-webkit-animation: slideDown 0.35s ease-out;
			animation: slideDown 0.35s ease-out;
			top: 0;
			z-index: 99999;
			transition: transform 0.5s ease-in-out;
		}

		@-webkit-keyframes slideDown {
		  from {
			transform: translateY(-100%);
		  }
		  to {
			transform: translateY(0);
		  }
		}

		@keyframes slideDown {
		  from {
			transform: translateY(-100%);
		  }
		  to {
			transform: translateY(0);
		  }
		}
		main{height:2000px}
    &lt;/style&gt;
&lt;/head&gt;
&lt;body&gt;
    &lt;header class="header"&gt;
        منوی اصلی
    &lt;/header&gt;
    &lt;main&gt;
        &lt;!-- محتوای اصلی سایت --&gt;
        &lt;p&gt;محتوای سایت اینجاست...&lt;/p&gt;
    &lt;/main&gt;
    &lt;script id="rendered-js"&gt;
        const header = document.querySelector(".header");
        const toggleClass = "is-sticky";
        let lastScrollY = window.pageYOffset;

        window.addEventListener("scroll", () =&gt; {
            const currentScroll = window.pageYOffset;
            if (currentScroll &gt; lastScrollY) {
                // اسکرول به پایین
                header.classList.add(toggleClass);
            } else {
                // اسکرول به بالا
                header.classList.remove(toggleClass);
            }
            lastScrollY = currentScroll;
        });
    &lt;/script&gt;
&lt;/body&gt;
&lt;/html&gt;
</code></pre><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/%DA%A9%D8%AF-%D8%A7%D8%B3%D8%AA%DB%8C%DA%A9%DB%8C-%DA%A9%D8%B1%D8%AF%D9%86-%D9%87%D8%AF%D8%B1-%D8%A8%D8%A7-%D8%AC%D8%A7%D9%88%D8%A7-%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA-%D9%88-css-ryucu</guid>
</item>
<item>
<pubDate>Mon, 09 Sep 2024 07:40:00 +0330</pubDate>
<title>ابزار فشرده‌سازی CSS بهینه‌سازی کدهای CSS با حذف فاصله‌ها، کامنت‌ها و کاراکترهای غیرضروری</title>
<link>https://www.rozblog.com/code/css-compression-tool-optimize-your-css-code-by-removing-spaces-comments-qjyyb</link>
<description>
<![CDATA[<p>ابزار فشرده سازی CSS یک ابزار آنلاین قدرتمند است که به شما کمک می کند تا کدهای CSS خود را بهینه سازی و فشرده کنید. این ابزار با حذف فاصله های اضافی، کامنت ها و کاراکترهای غیرضروری، حجم فایل های CSS شما را کاهش می دهد و باعث افزایش سرعت بارگذاری صفحات وب می شود. در ادامه به معرفی قابلیت ها و مزایای این ابزار می پردازیم.</p>
<h4>قابلیت های ابزار فشرده سازی CSS</h4>
<ol>
<li>
<p><strong>حذف فاصله های بعد از<span>&nbsp;</span><code>:</code></strong>: این ابزار به طور خودکار فاصله های اضافی بعد از کاراکتر<span>&nbsp;</span><code>:</code><span>&nbsp;</span>را حذف می کند. این کار باعث کاهش حجم فایل و بهبود خوانایی کد می شود.</p>
</li>
<li>
<p><strong>حذف آخرین<span>&nbsp;</span><code>;</code><span>&nbsp;</span>در هر کلاس یا آیدی</strong>: در بسیاری از موارد، آخرین<span>&nbsp;</span><code>;</code><span>&nbsp;</span>در هر کلاس یا آیدی نیازی به وجود ندارد. این ابزار به طور خودکار این کاراکترها را حذف می کند تا حجم فایل کاهش یابد.</p>
</li>
<li>
<p><strong>حذف کامنت های CSS</strong>: کامنت ها در کدهای CSS برای توضیحات و مستندسازی استفاده می شوند، اما در فایل نهایی نیازی به آن ها نیست. این ابزار تمامی کامنت ها را حذف می کند تا حجم فایل کاهش یابد.</p>
</li>
</ol>
<h4>مزایای استفاده از ابزار فشرده سازی CSS</h4>
<ul>
<li>
<p><strong>افزایش سرعت بارگذاری صفحات وب</strong>: با کاهش حجم فایل های CSS، سرعت بارگذاری صفحات وب به طور قابل توجهی افزایش می یابد. این کار باعث بهبود تجربه کاربری و کاهش نرخ پرش کاربران می شود.</p>
</li>
<li>
<p><strong>بهبود سئو</strong>: سرعت بارگذاری صفحات یکی از عوامل مهم در رتبه بندی گوگل است. با استفاده از این ابزار و بهینه سازی فایل های CSS، می توانید رتبه سایت خود را در نتایج جستجوی گوگل بهبود دهید.</p>
</li>
<li>
<p><strong>کاهش مصرف پهنای باند</strong>: با کاهش حجم فایل های CSS، مصرف پهنای باند سرور کاهش می یابد. این کار می تواند هزینه های میزبانی وب را کاهش دهد و عملکرد سرور را بهبود بخشد.</p>
</li>
</ul>
<h3>مثال عملی</h3>
<p>در اینجا یک مثال عملی از استفاده از ابزار فشرده سازی CSS آورده شده است. فرض کنید کد CSS اولیه شما به این شکل باشد:</p>
<div class="code" tabindex="-1">
<pre class="language-markup"><code>/* کامنت نمونه */
body {
    background-color: #fff; /* رنگ پس زمینه */
    margin: 0; 
    padding: 0; 
}

h1 {
    color: #333; 
    font-size: 24px; 
}</code></pre>
<span>پس از فشرده سازی، کد به این شکل تبدیل می شود:</span></div>
<pre class="language-markup"><code>body{background-color:#fff;margin:0;padding:0}h1{color:#333;font-size:24px}</code></pre>
<h4>نتیجه فشرده سازی</h4>
<ul>
<li><strong>حجم کد اصلی</strong>: 123 بایت</li>
<li><strong>حجم کد فشرده شده</strong>: 78 بایت</li>
<li><strong>میزان کاهش حجم</strong>: 45 بایت</li>
</ul>
<h3>اهمیت فشرده سازی CSS در بهبود عملکرد وب سایت ها</h3>
<h4>مقدمه</h4>
<p>در دنیای امروز، سرعت بارگذاری صفحات وب یکی از عوامل کلیدی در جذب و نگه داشتن کاربران است. یکی از روش های موثر برای بهبود سرعت بارگذاری صفحات، فشرده سازی فایل های CSS است. در این مقاله به بررسی اهمیت فشرده سازی CSS و تاثیر آن بر عملکرد وب سایت ها می پردازیم.</p>
<h4>فشرده سازی CSS چیست؟</h4>
<p>فشرده سازی CSS فرآیندی است که در آن کدهای CSS بهینه سازی و کوچک سازی می شوند. این فرآیند شامل حذف فاصله های اضافی، کامنت ها و کاراکترهای غیرضروری است. هدف از فشرده سازی CSS کاهش حجم فایل ها و افزایش سرعت بارگذاری صفحات وب است.</p>
<h4>مزایای فشرده سازی CSS</h4>
<ol>
<li>
<p><strong>افزایش سرعت بارگذاری صفحات</strong>: یکی از مهم ترین مزایای فشرده سازی CSS، افزایش سرعت بارگذاری صفحات وب است. با کاهش حجم فایل های CSS، زمان بارگذاری صفحات کاهش می یابد و کاربران تجربه بهتری از وب سایت خواهند داشت.</p>
</li>
<li>
<p><strong>بهبود سئو</strong>: سرعت بارگذاری صفحات یکی از عوامل مهم در رتبه بندی گوگل است. با فشرده سازی CSS و بهینه سازی فایل ها، می توانید رتبه سایت خود را در نتایج جستجوی گوگل بهبود دهید.</p>
</li>
<li>
<p><strong>کاهش مصرف پهنای باند</strong>: با کاهش حجم فایل های CSS، مصرف پهنای باند سرور کاهش می یابد. این کار می تواند هزینه های میزبانی وب را کاهش دهد و عملکرد سرور را بهبود بخشد.</p>
</li>
<li>
<p><strong>بهبود تجربه کاربری</strong>: کاربران انتظار دارند که صفحات وب به سرعت بارگذاری شوند. با فشرده سازی CSS و افزایش سرعت بارگذاری صفحات، می توانید تجربه کاربری بهتری ارائه دهید و نرخ پرش کاربران را کاهش دهید.</p>
</li>
</ol>
<h4>چگونه CSS را فشرده کنیم؟</h4>
<p>برای فشرده سازی CSS می توانید از ابزارهای آنلاین و آفلاین مختلفی استفاده کنید. یکی از ابزارهای آنلاین محبوب، ابزار فشرده سازی CSS است که به شما امکان می دهد تا کدهای CSS خود را به سرعت و به راحتی فشرده کنید. این ابزار با حذف فاصله های اضافی، کامنت ها و کاراکترهای غیرضروری، حجم فایل های CSS شما را کاهش می دهد.</p>
<h4>نتیجه گیری</h4>
<p>فشرده سازی CSS یکی از روش های موثر برای بهبود سرعت بارگذاری صفحات وب و بهبود عملکرد وب سایت ها است. با استفاده از ابزارهای فشرده سازی CSS و بهینه سازی فایل ها، می توانید تجربه کاربری بهتری ارائه دهید و رتبه سایت خود را در نتایج جستجوی گوگل بهبود دهید. بنابراین، توصیه می شود که همیشه فایل های CSS خود را فشرده کنید تا از مزایای آن بهره مند شوید.</p><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/css-compression-tool-optimize-your-css-code-by-removing-spaces-comments-qjyyb</guid>
</item>
<item>
<pubDate>Sun, 01 Sep 2024 21:03:00 +0330</pubDate>
<title>امکان ایجکس مشاهده نتایج (پست های) بیشتر و طریقه استفاده</title>
<link>https://www.rozblog.com/code/%D8%A7%D9%85%DA%A9%D8%A7%D9%86-%D8%A7%DB%8C%D8%AC%DA%A9%D8%B3-%D9%85%D8%B4%D8%A7%D9%87%D8%AF%D9%87-%D9%86%D8%AA%D8%A7%DB%8C%D8%AC-%D9%BE%D8%B3%D8%AA-%D9%87%D8%A7%DB%8C-%D8%A8%DB%8C%D8%B4%D8%AA%D8%B1-wjjsq</link>
<description>
<![CDATA[<p>با این امکان، کاربران به جای کلیک کردن بر روی صفحات 1، 2، 3 و &hellip; و انتظار برای بارگذاری مجدد کل صفحه، می&zwnj;توانند به راحتی مطالب صفحات دیگر را به صورت ایجکس در زیر همان مطالب بارگذاری و مشاهده کنند. این کار باعث می&zwnj;شود کاربران بتوانند به سرعت به محتوای مورد نظر خود دسترسی پیدا کنند.</p>
<p>مزایای استفاده از ایجکس</p>
<ol>
<li><strong>افزایش سرعت بارگذاری</strong>: با استفاده از ایجکس، تنها محتوای جدید بارگذاری می&zwnj;شود و نیازی به بارگذاری مجدد کل صفحه نیست. این کار باعث کاهش زمان بارگذاری و افزایش سرعت سایت می&zwnj;شود.</li>
<li><strong>بهبود تجربه کاربری</strong>: کاربران می&zwnj;توانند به راحتی و بدون وقفه به محتوای صفحات دیگر دسترسی پیدا کنند. این ویژگی به خصوص برای سایت&zwnj;هایی با محتوای زیاد و صفحات متعدد بسیار مفید است.</li>
<li><strong>کاهش بار سرور</strong>: با استفاده از ایجکس، تنها درخواست&zwnj;های ضروری به سرور ارسال می&zwnj;شود و این کار باعث کاهش بار سرور و بهبود عملکرد سایت می&zwnj;شود.</li>
<li><strong>نمایش پویا و جذاب</strong>: با بارگذاری پویا و بدون رفرش، سایت شما به نظر مدرن&zwnj;تر و جذاب&zwnj;تر می&zwnj;آید و کاربران تجربه&zwnj;ای لذت&zwnj;بخش&zwnj;تر خواهند داشت.</li>
</ol>
<p>این امکان شامل تنظیماتی است که با فعال کردن آن، به طور خودکار کدهای مربوطه به قالب اضافه می&zwnj;شود. تنظیمات این قسمت شامل موارد زیر است:</p>
<ul>
<li>صفحه&zwnj;بندی صفحه اول</li>
<li>صفحه&zwnj;بندی موضوعات</li>
<li>صفحه بندی موضوعات</li>
<li>صفحه بندی جستجو (در صورت فعال نمودن از تنظیمات)</li>
</ul>
<p>برای فعال نمودن این موارد به تنظیمات سایت مراجعه کنید</p>
<h3>طرز استفاده از سیستم برای شخصی سازی</h3>
<p>برای اضافه کردن این سیستم کافیست مراحل زیر را انجام دهید</p>
<p><span>1</span><span>&nbsp;</span>- افزودن کلاس rb_pl_ajax به والد تگ پست ها</p>
<p><span>2</span><span>&nbsp;</span>- افزودن کد نمایش بیشتر بعد از &lt;/ROZBLOG&gt; همچنین میتوانید این تگ را بعد از <b class="tag" dir="ltr">&lt;RB:Blog_Page_Block&gt;</b> قرار دهید</p>
<pre class="language-markup"><code>&lt;div class="rb_pl_ajax"&gt;
&lt;ROZBLOG&gt;
    &lt;!-- محتوای پست&zwnj;ها --&gt;
&lt;/ROZBLOG&gt;
&lt;RB:Show_More_Result&gt;&lt;div id="get_post_ajax" data="[Result_Value]" class="get_post_ajax"&gt;&lt;a class="rb_more_result" href="javascript:posts_ajax();"&gt;نمایش مطالب بیشتر&lt;/a&gt;&lt;/div&gt;&lt;/RB:Show_More_Result&gt;
&lt;/div&gt;</code></pre>
<h2 style="text-align: center;">دموی سیستم</h2>
<p><video width="100%" height="auto" controls="controls" poster="">
<source src="https://www.rozblog.com/images/help/show_more_result.mp4" type="video/mp4"></video></p><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/%D8%A7%D9%85%DA%A9%D8%A7%D9%86-%D8%A7%DB%8C%D8%AC%DA%A9%D8%B3-%D9%85%D8%B4%D8%A7%D9%87%D8%AF%D9%87-%D9%86%D8%AA%D8%A7%DB%8C%D8%AC-%D9%BE%D8%B3%D8%AA-%D9%87%D8%A7%DB%8C-%D8%A8%DB%8C%D8%B4%D8%AA%D8%B1-wjjsq</guid>
</item>
<item>
<pubDate>Sat, 31 Aug 2024 20:16:00 +0330</pubDate>
<title>تگ های ورود سریع و اموزش استفاده از آن</title>
<link>https://www.rozblog.com/code/%D8%AA%DA%AF-%D9%87%D8%A7%DB%8C-%D9%88%D8%B1%D9%88%D8%AF-%D8%B3%D8%B1%DB%8C%D8%B9-%D9%88-%D8%A7%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%A2%D9%86-bkuuj</link>
<description>
<![CDATA[<p>برای استفاده از تگ کافیست تگ های زیر را در بلاک مورد نظر قاالب خود قرار دهید</p>
<pre class="language-markup"><code>&lt;RB:Form_Login_Block&gt;
&lt;RB:Placeholder:on&gt;
&lt;RB:Title:off&gt;
&lt;RB:Form_Ajax:on&gt;
[Login_Form]
&lt;/RB:Form_Login_Block&gt;</code></pre>
<p>و برای استفاده به صورت پنجره مدال یا بازشونده روی صفحه میتوانید از کد زیر استفاده کنید</p>
<p><img src="https://rozup.ir/view/3903500/modal.jpg" width="475" height="303" alt="" style="display: block; margin-left: auto; margin-right: auto;"></p>
<pre class="language-markup"><code>&lt;RB:Form_Login_Block&gt;
&lt;div class="rb_modal rb_animation_open" style="display:none" id="fast_login"&gt;
&lt;div class="rb_modal_vip div_input bg-white"&gt;
&lt;RB:Placeholder:on&gt;
&lt;RB:Title:off&gt;
&lt;RB:Form_Ajax:on&gt;
[Login_Form]
&lt;/div&gt;
&lt;/div&gt;
&lt;/RB:Form_Login_Block&gt;</code></pre>
<p>لینک برای باز کردن پنجره مدال ورود به سایت</p>
<pre class="language-markup"><code>&lt;RB:Guest_Block&gt;&lt;div class="btn_n btn_info pointer" onclick="rb_open_modal('fast_login')"&gt;ورود/عضویت&lt;/div&gt;&lt;/RB:Guest_Block&gt;</code></pre>
<p>کد برای اضافه کردن دکمه "حساب کاربری ندارید ؟ "</p>
<pre class="language-markup"><code>&lt;script&gt;
var log_btn = document.querySelector(".log_btn");
if (log_btn) {
		log_btn.innerHTML += '&lt;input class="rb_btn set_register" id="rb_reg_btn" onclick="rb_open_modal(\'fast_register\')" type="button" value="حساب کاربری ندارید ؟"&gt;';
}
&lt;/script&gt;</code></pre><br /><a href="http://rozblog.com/">کدهای کاربردی</a>]]>
</description>
<guid>https://www.rozblog.com/code/%D8%AA%DA%AF-%D9%87%D8%A7%DB%8C-%D9%88%D8%B1%D9%88%D8%AF-%D8%B3%D8%B1%DB%8C%D8%B9-%D9%88-%D8%A7%D9%85%D9%88%D8%B2%D8%B4-%D8%A7%D8%B3%D8%AA%D9%81%D8%A7%D8%AF%D9%87-%D8%A7%D8%B2-%D8%A2%D9%86-bkuuj</guid>
</item>
</channel>
</rss>
