رفتن به مطلب

محسن عواطفی

عضو سایت
  • تعداد ارسال‌ها

    395
  • تاریخ عضویت

  • آخرین بازدید

  • روز های برد

    22

نوشته‌ها ارسال شده توسط محسن عواطفی

  1. در 15 ساعت قبل، Alipiroo50 گفته است :

    سلام، وقت بخیر

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

    کدهای زیر مربوط به تایپوگرافیه:

    
    /*--------------------------------------------------------------
    ## Type
    --------------------------------------------------------------*/
    body {
    	overflow-x: hidden;
    }
    
    h1, h2, h3, h4, h5, h6,
    .h1, .h2, .h3, .h4, .h5, .h6 {
    	line-height: 1.125;
    }
    
    a {
    	transition: color 0.2s ease;
    }
    
    hr, .wp-block-separator {
    	border: 0;
    	border-top: 1px solid rgba(0, 0, 0, 0.1);
    	margin-top: 38px !important;
    	margin-bottom: 38px !important;
    }
    
    mark,
    .mark {
    	padding: 0.25rem 0.5rem;
    	font-size: 0.75rem;
    	text-transform: uppercase;
    }
    
    legend {
    	font-size: 1rem;
    }
    
    
    /*--------------------------------------------------------------
    ## Post Content
    --------------------------------------------------------------*/
    .entry-content {
    	line-height: 1.75;
    }
    
    .entry-content > a,
    .entry-content > p > a,
    .entry-content > ul li > a,
    .entry-content > ol li > a,
    .entry-content > p > em > a,
    .entry-content > p > strong > a,
    .entry-content .cnvs-block-column-inner > p > a,
    .entry-content .cnvs-block-column-inner > p > strong > a {
    	text-decoration: underline;
    }
    
    .entry-content > a:hover, .entry-content > a:focus,
    .entry-content > p > a:hover,
    .entry-content > p > a:focus,
    .entry-content > ul li > a:hover,
    .entry-content > ul li > a:focus,
    .entry-content > ol li > a:hover,
    .entry-content > ol li > a:focus,
    .entry-content > p > em > a:hover,
    .entry-content > p > em > a:focus,
    .entry-content > p > strong > a:hover,
    .entry-content > p > strong > a:focus,
    .entry-content .cnvs-block-column-inner > p > a:hover,
    .entry-content .cnvs-block-column-inner > p > a:focus,
    .entry-content .cnvs-block-column-inner > p > strong > a:hover,
    .entry-content .cnvs-block-column-inner > p > strong > a:focus {
    	text-decoration: none;
    }
    
    .entry-content > blockquote {
    	position: relative;
    	line-height: 1.5;
    	margin-top: 3rem;
    	margin-bottom: 3rem;
    	margin-right: 0;
    	margin-left: 0;
    	padding: 0;
    	border-right: 0;
    }
    
    .entry-content > blockquote:before {
    	display: block;
    	margin-bottom: 1rem;
    	font-size: 2rem;
    	font-family: "cs-icons";
    	font-weight: normal;
    	content: "\e904";
    }
    
    .entry-content > blockquote cite {
    	display: block;
    	font-weight: normal;
    	font-style: normal;
    	margin-top: 0.5rem;
    }
    
    .entry-content > blockquote p {
    	line-height: 1.5;
    }
    
    .entry-content > blockquote p:first-child {
    	font-size: inherit;
    	margin-top: 0;
    }
    
    .entry-content > blockquote p:last-child {
    	margin-bottom: 0;
    }
    
    .style-align-center .entry-content > blockquote {
    	text-align: center;
    }
    
    .style-align-left .entry-content > blockquote {
    	position: relative;
    	padding-right: 4rem !important;
    }
    
    .style-align-left .entry-content > blockquote:before {
    	position: absolute;
    	right: 0;
    	top: 0;
    }
    
    .entry-content cite {
    	color: rgba(0, 0, 0, 0.5);
    }
    
    .entry-content .wp-caption-dd {
    	color: rgba(0, 0, 0, 0.5);
    	margin-right: 0;
    }
    
    .entry-content .cs-embed {
    	margin-top: 48px;
    	margin-bottom: 48px;
    }
    
    .alignnone {
    	max-width: 100%;
    }
    
    .alignleft {
    	float: none;
    	margin-left: 0;
    }
    
    .alignleft:first-child + * {
    	margin-top: 0;
    }
    
    @media (min-width: 760px) {
    	.alignleft {
    		float: right;
    		margin-left: 2rem;
    	}
    }
    
    .alignright {
    	float: none;
    	margin-right: 0;
    }
    
    .alignright:first-child + * {
    	margin-top: 0;
    }
    
    @media (min-width: 760px) {
    	.alignright {
    		float: left;
    		margin-right: 2rem;
    	}
    }
    
    .aligncenter {
    	display: block;
    	clear: both;
    	margin-right: auto;
    	margin-left: auto;
    	max-width: 100%;
    }
    
    .aligncenter .wp-caption-text,
    .aligncenter .wp-caption-dd {
    	text-align: center;
    }
    
    img.alignleft,
    img.alignright {
    	margin-bottom: 1rem;
    }
    
    .wp-block-group.alignleft,
    .wp-block-group.alignright,
    .wp-block-pullquote.alignleft,
    .wp-block-pullquote.alignright,
    .wp-block-cover-image.alignleft,
    .wp-block-cover-image.alignright,
    .wp-block-cover.alignleft,
    .wp-block-cover.alignright {
    	max-width: 100%;
    }
    
    @media (min-width: 760px) {
    	.wp-block-group.alignleft,
    	.wp-block-group.alignright,
    	.wp-block-pullquote.alignleft,
    	.wp-block-pullquote.alignright,
    	.wp-block-cover-image.alignleft,
    	.wp-block-cover-image.alignright,
    	.wp-block-cover.alignleft,
    	.wp-block-cover.alignright {
    		max-width: calc(50% - 1rem);
    	}
    }
    
    /** =========== Blocks =========== */
    .wp-block-columns > *:first-child {
    	margin-top: 0;
    }
    
    .wp-block-columns > *:last-child {
    	margin-bottom: 0;
    }
    
    .wp-block-columns .wp-block-column > *:first-child {
    	margin-top: 0;
    }
    
    .wp-block-columns .wp-block-column > *:last-child {
    	margin-bottom: 0;
    }
    
    @media only screen and (min-width: 600px) {
    	.wp-block-columns {
    		flex-wrap: nowrap;
    	}
    }
    
    p.has-background {
    	padding: 1.5rem 2rem;
    }
    
    p > code {
    	color: inherit;
    }
    
    p.wp-block-subhead {
    	font-size: 1.25rem;
    	color: #6c757d;
    	opacity: 1;
    }
    
    p.has-drop-cap:not(:focus):first-letter {
    	font-size: 4rem;
    	line-height: 1;
    	margin-top: 0.5rem;
    	margin-left: 2rem;
    	margin-bottom: 0.5rem;
    }
    
    .wp-block-separator:not(.is-style-dots) {
    	border-top: none;
    	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    }
    
    .wp-block-separator.is-style-dots {
    	border: none;
    }
    
    .wp-block-separator.is-style-dots:before {
    	color: #6c757d;
    }
    
    @media (min-width: 760px) {
    	.wp-block-separator.is-style-wide {
    		max-width: 680px !important;
    	}
    }
    
    @media (min-width: 1020px) {
    	.wp-block-separator.is-style-wide {
    		max-width: 960px !important;
    	}
    }
    
    @media (min-width: 1120px) {
    	.wp-block-separator.is-style-wide {
    		max-width: 1040px !important;
    	}
    }
    
    @media (min-width: 1240px) {
    	.wp-block-separator.is-style-wide {
    		max-width: 1160px !important;
    	}
    }
    
    .wp-block-separator:not(.is-style-dots):not(.is-style-wide):not(.alignwide):not(.alignfull) {
    	max-width: 100px !important;
    }
    
    .wp-block-button {
    	margin-bottom: 0;
    }
    
    .wp-block-button.alignleft {
    	text-align: right;
    }
    
    .wp-block-button.alignright {
    	text-align: left;
    }
    
    .wp-block-button.aligncenter {
    	text-align: center;
    }
    
    .wp-block-button .wp-block-button__link {
    	display: inline-block;
    	padding: 0.375rem 1rem;
    	transition: 0.2s;
    }
    
    .wp-block-button .wp-block-button__link:not(.has-background) {
    	background-color: #007bff;
    }
    
    .wp-block-button .wp-block-button__link:not(.has-text-color) {
    	color: white;
    }
    
    .wp-block-button .wp-block-button__link:hover {
    	cursor: pointer;
    }
    
    .wp-block-code {
    	background-color: rgba(0, 0, 0, 0.05);
    	padding: 1rem 1.5rem;
    	font-family: Menlo, Consolas, monaco, monospace;
    	line-height: 1.75;
    	font-size: 0.875rem;
    	color: inherit;
    	white-space: pre-wrap;
    	border-radius: 0;
    	border: none;
    }
    
    .wp-block-code .editor-plain-text {
    	background-color: transparent;
    	color: inherit;
    }
    
    .wp-block-preformatted {
    	background-color: rgba(0, 0, 0, 0.05);
    	padding: 1rem 1.5rem;
    }
    
    .wp-block-preformatted pre {
    	padding: 0;
    }
    
    .wp-block-preformatted,
    .wp-block-preformatted pre {
    	font-family: Menlo, Consolas, monaco, monospace;
    	line-height: 1.75;
    	font-size: 0.875rem;
    	color: inherit;
    	white-space: pre-wrap;
    }
    
    .wp-block-verse {
    	background-color: rgba(0, 0, 0, 0.05);
    	padding: 1rem 1.5rem;
    }
    
    .wp-block-verse pre {
    	padding: 0;
    }
    
    .wp-block-verse,
    .wp-block-verse pre {
    	font-family: Menlo, Consolas, monaco, monospace;
    	line-height: 1.75;
    	font-size: 0.875rem;
    	color: inherit;
    	overflow: auto;
    }
    
    .wp-block-audio figcaption {
    	color: #6c757d;
    	text-align: center;
    }
    
    .wp-block-embed figcaption {
    	color: #6c757d;
    	text-align: center;
    }
    
    .wp-block-video video {
    	width: 100%;
    }
    
    .wp-block-media-text p:last-child {
    	margin-bottom: 0;
    }
    
    @media (max-width: 759.98px) {
    	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content {
    		padding-top: 8%;
    		padding-bottom: 0;
    	}
    	.wp-block-media-text.is-stacked-on-mobile.has-media-on-the-right .wp-block-media-text__content {
    		padding-top: 0;
    		padding-bottom: 8%;
    	}
    }
    
    .wp-block-image figcaption {
    	color: #6c757d;
    	text-align: center;
    }
    
    @media (min-width: 760px) {
    	.wp-block-image figcaption {
    		text-align: initial;
    	}
    }
    
    .wp-block-image .alignleft figcaption, .wp-block-image .alignright figcaption,
    .wp-block-image .aligncenter figcaption, .wp-block-image .alignwide figcaption,
    .wp-block-image .alignfull figcaption {
    	text-align: center;
    }
    
    .wp-block-image.alignleft figcaption, .wp-block-image.alignright figcaption, .wp-block-image.aligncenter figcaption, .wp-block-image.alignwide figcaption, .wp-block-image.alignfull figcaption {
    	text-align: center;
    }
    
    .wp-block-image .alignleft, .wp-block-image.alignleft {
    	float: none;
    	margin-left: 0;
    }
    
    @media (min-width: 760px) {
    	.wp-block-image .alignleft, .wp-block-image.alignleft {
    		float: right;
    		margin-left: 2rem;
    	}
    }
    
    .wp-block-image .alignright, .wp-block-image.alignright {
    	float: none;
    	margin-right: 0;
    }
    
    @media (min-width: 760px) {
    	.wp-block-image .alignright, .wp-block-image.alignright {
    		float: left;
    		margin-right: 2rem;
    	}
    }
    
    @media (max-width: 759.98px) {
    	.wp-block-image .alignleft,
    	.wp-block-image .alignright {
    		margin-right: auto;
    		margin-left: auto;
    	}
    }
    
    .wp-block-group.has-background {
    	padding: 40px;
    }
    
    .wp-block-cover,
    .wp-block-cover-image {
    	min-height: auto;
    }
    
    .wp-block-cover .wp-block-cover__inner-container,
    .wp-block-cover-image .wp-block-cover__inner-container {
    	width: 100%;
    }
    
    .wp-block-cover.has-background-dim,
    .wp-block-cover-image.has-background-dim {
    	padding: 40px;
    }
    
    .wp-block-quote:not(.is-large), .wp-block-quote:not(.is-style-large) {
    	position: relative;
    	line-height: 1.5;
    	margin-top: 3rem;
    	margin-bottom: 3rem;
    	padding: 0;
    }
    
    .wp-block-quote:not(.is-large):not(.is-style-large) {
    	border-right: 0;
    }
    
    .wp-block-quote:before {
    	display: block;
    	margin-bottom: 1rem;
    	font-family: "cs-icons";
    	font-weight: normal;
    	content: "\e904";
    }
    
    .wp-block-quote p {
    	line-height: 1.5;
    }
    
    .wp-block-quote p:first-child {
    	font-size: inherit;
    	margin-top: 0;
    }
    
    .wp-block-quote p:last-child {
    	margin-bottom: 0;
    }
    
    .wp-block-quote cite {
    	line-height: 1.5;
    }
    
    .wp-block-quote .wp-block-quote__citation {
    	line-height: 1.5;
    }
    
    .wp-block-quote.is-large p,
    .wp-block-quote.is-large p:first-child, .wp-block-quote.is-style-large p,
    .wp-block-quote.is-style-large p:first-child {
    	font-size: 2.5rem;
    	font-style: normal;
    	line-height: 1.6;
    }
    
    .wp-block-quote.is-large cite,
    .wp-block-quote.is-large footer, .wp-block-quote.is-style-large cite,
    .wp-block-quote.is-style-large footer {
    	font-size: 0.85rem;
    	text-align: right;
    }
    
    .style-align-center .wp-block-quote {
    	text-align: center;
    }
    
    .style-align-center .wp-block-quote.is-style-large cite,
    .style-align-center .wp-block-quote.is-style-large footer {
    	text-align: center;
    }
    
    .style-align-left .wp-block-quote {
    	position: relative;
    	padding-right: 4rem !important;
    	text-align: right;
    }
    
    .style-align-left .wp-block-quote:before {
    	position: absolute;
    	right: 0;
    	top: 0;
    }
    
    .style-align-left .wp-block-quote.is-style-large cite,
    .style-align-left .wp-block-quote.is-style-large footer {
    	text-align: right;
    }
    
    .wp-block-pullquote {
    	border-top: 4px solid #000000;
    	border-bottom: 4px solid #000000;
    	padding: 2rem 1rem;
    }
    
    .wp-block-pullquote blockquote {
    	margin: 0;
    }
    
    .wp-block-pullquote blockquote.has-text-color p,
    .wp-block-pullquote blockquote.has-text-color cite,
    .wp-block-pullquote blockquote.has-text-color footer,
    .wp-block-pullquote blockquote.has-text-color .wp-block-pullquote__citation {
    	color: inherit;
    }
    
    .wp-block-pullquote p {
    	font-size: 1.75rem;
    	line-height: 1.5;
    }
    
    .wp-block-pullquote .alignleft p,
    .wp-block-pullquote .alignright p {
    	font-size: 1.25rem;
    }
    
    .wp-block-pullquote blockquote:not(.has-text-color) {
    	color: #007bff;
    }
    
    .wp-block-pullquote blockquote:not(.has-text-color) cite,
    .wp-block-pullquote blockquote:not(.has-text-color) footer,
    .wp-block-pullquote blockquote:not(.has-text-color) .wp-block-pullquote__citation {
    	font-style: italic;
    }
    
    .wp-block-latest-comments {
    	border-top: 1px solid #e9ecef;
    	border-bottom: 1px solid #e9ecef;
    	padding: 2rem 0;
    	margin: 0;
    }
    
    .wp-block-latest-comments .wp-block-latest-comments__comment {
    	margin: 2rem 0 0;
    }
    
    .wp-block-latest-comments .wp-block-latest-comments__comment:first-child {
    	margin-top: 0;
    }
    
    .wp-block-latest-comments .wp-block-latest-comments__comment > article {
    	border: none !important;
    	margin: 0 !important;
    	padding: 0 !important;
    }
    
    .wp-block-latest-comments .wp-block-latest-comments__comment-date {
    	color: #6c757d;
    	font-size: 0.875rem;
    }
    
    .wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p {
    	font-size: inherit;
    	line-height: inherit;
    	margin: 0.5rem 0;
    }
    
    .wp-block-latest-comments .wp-block-latest-comments__comment-excerpt p:last-child {
    	margin-bottom: 0;
    }
    
    .wp-block-latest-posts,
    .wp-block-categories-list,
    .wp-block-categories__list,
    .wp-block-archives-list {
    	padding-right: 0;
    	list-style: none;
    	padding-right: 0;
    	padding-left: 0;
    	text-align: right;
    }
    
    .wp-block-latest-posts li,
    .wp-block-categories-list li,
    .wp-block-categories__list li,
    .wp-block-archives-list li {
    	display: flex;
    	align-items: center;
    	flex-wrap: wrap;
    }
    
    .wp-block-latest-posts > li a,
    .wp-block-categories-list > li a,
    .wp-block-categories__list > li a,
    .wp-block-archives-list > li a {
    	padding-top: 0.25rem;
    	padding-bottom: 0.25rem;
    }
    
    .wp-block-latest-posts > li > a,
    .wp-block-categories-list > li > a,
    .wp-block-categories__list > li > a,
    .wp-block-archives-list > li > a {
    	display: flex;
    	position: relative;
    	padding-right: 2rem;
    }
    
    .wp-block-latest-posts > li > a:before,
    .wp-block-categories-list > li > a:before,
    .wp-block-categories__list > li > a:before,
    .wp-block-archives-list > li > a:before {
    	position: absolute;
    	right: 0;
    	top: 8px;
    	font-family: "cs-icons";
    	content: "\e91c";
    	color: #ced4da;
    	font-size: 14px;
    	margin-left: 1rem;
    	display: inline-block;
    	transition: .2s ease all;
    	display: flex;
    	align-items: center;
    	justify-content: center;
    	width: 20px;
    	height: 20px;
    	border-radius: 100%;
    }
    
    .wp-block-latest-posts > li > a:hover,
    .wp-block-categories-list > li > a:hover,
    .wp-block-categories__list > li > a:hover,
    .wp-block-archives-list > li > a:hover {
    	color: #007bff;
    }
    
    .wp-block-latest-posts > li > a:hover:before,
    .wp-block-categories-list > li > a:hover:before,
    .wp-block-categories__list > li > a:hover:before,
    .wp-block-archives-list > li > a:hover:before {
    	color: #fff;
    	transition: .2s ease all;
    	background: #6c757d;
    }
    
    .wp-block-latest-posts .wp-block-latest-posts__post-date,
    .wp-block-categories-list .wp-block-latest-posts__post-date,
    .wp-block-categories__list .wp-block-latest-posts__post-date,
    .wp-block-archives-list .wp-block-latest-posts__post-date {
    	margin-right: 2rem;
    	flex: 0 0 100%;
    	font-size: 0.875rem;
    	color: #6c757d;
    }
    
    .wp-block-latest-posts .children,
    .wp-block-latest-posts .wp-block-categories__list,
    .wp-block-categories-list .children,
    .wp-block-categories-list .wp-block-categories__list,
    .wp-block-categories__list .children,
    .wp-block-categories__list .wp-block-categories__list,
    .wp-block-archives-list .children,
    .wp-block-archives-list .wp-block-categories__list {
    	flex: 0 0 100%;
    }
    
    .wp-block-categories > .wp-block-categories__list {
    	padding: 0;
    }
    
    .wp-block-archives.wp-block-archives-list {
    	padding: 0;
    }
    
    .wp-block-categories-list a,
    .wp-block-categories__list a,
    .wp-block-archives-list a {
    	padding-left: 0.5rem;
    }
    
    .wp-block-gallery {
    	align-items: flex-start;
    }
    
    .wp-block-gallery > .blocks-gallery-grid {
    	width: 100%;
    }
    
    .wp-block-gallery .blocks-gallery-item figure {
    	display: flex;
    	flex-direction: column;
    	align-items: flex-start;
    	justify-content: flex-start;
    }
    
    .wp-block-gallery .blocks-gallery-item figcaption {
    	background: transparent;
    	position: relative;
    	padding: 0;
    	min-height: initial;
    	color: inherit;
    	padding-top: 1rem;
    	text-align: right;
    }
    
    .wp-block-search {
    	position: relative;
    	display: flex;
    	flex-wrap: wrap;
    	align-items: stretch;
    	width: 100%;
    }
    
    .wp-block-search .wp-block-search__input {
    	position: relative;
    	z-index: 2;
    	flex: 1 1 auto;
    	width: 1%;
    	margin-bottom: 0;
    }
    
    .wp-block-search .wp-block-search__button {
    	border: none;
    	margin-right: 0;
    	line-height: 1.5rem;
    }

     

    سلام
    وقت بخیر
    نیازی نیست این همه کد رو بفرستید، آدرس سایتتون و اون بخشی که این مشکل رو داره بفرستید، اونطوری راحت تر میشه بررسیش کرد

  2. در 17 دقیقه قبل، ahma گفته است :

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

    سلام وقت بخیر
    افزونه Ivory search رو امتحان کنید.

  3. در ۱ ساعت قبل، beh_kh_110 گفته است :

    سلام بالای صحفه پیشخوان من

    Deprecated: has_cap از نگارش 2.0.0 از رده خارج شده! استفاده از رده‌های کاربر، منسوخ شده است. از قابلیت‌ها (capabilities) به جای آن استفاده نمایید. in D:\xampp\htdocs\site1\wp-includes\functions.php on line 5600

    و بازدید سایت می زنم تو پیشخوان صحفه سفید نشان می دهد؟؟

     

     

    سلام وقت بخیر

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

  4. در 12 دقیقه قبل، محسن عواطفی گفته است :

    خواهش میکنم.

    اگر اشتباه نکنم افزونه‌ی Bulk Edit Pro بتونه اینکار رو انجام بده، با این حال بهترین راهش کدنویسیه اختصاصیه.

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

    $args = array( 'post_type' => 'product' );
    
    $products = get_posts( $args );
    
    if ( $products ){
    
       foreach ( $products as $product ){
    
          $product = wc_get_product( $product->ID );
          $regularPrice = floor($product->get_regular_price());
          $price = floor($product->get_price());
          update_post_meta($product->ID, '_regular_price', $regularPrice);
          update_post_meta($product->ID, '_price', $price);
    
       }
    
    }

    (اگر میخواید از این کد استفاده کنید، قبلش از فایل functions.php قالبتون یک بکاپ بگیرید).

  5. در 15 دقیقه قبل، Ashrafganjue گفته است :

    سلام و تشکر از پاسخ جامع و کامل جنابعالی

    متاسفانه بنده زیاد مسلط به این امور نمی باشم.

    آیا افزونه ای در این خصوص می شناسید؟

    با سپاس

    خواهش میکنم.

    اگر اشتباه نکنم افزونه‌ی Bulk Edit Pro بتونه اینکار رو انجام بده، با این حال بهترین راهش کدنویسیه اختصاصیه.

  6. در 13 دقیقه قبل، Ashrafganjue گفته است :

    سلام و وقت بخیر

    دوستان من چطور میتونم قیمت نهایی محصولاتم را رند کنم؟

    الان مثلا میاد 350/295 تومن

    میخوام به پایین گرد بشه

    سلام، وقت بخیر

    از دو راه میتونید این کار رو انجام بدید :

     

    راه اول : تغییر ساختار قیمت محصول از طریق php

    در این راه باید به در فایل‌های قالبتون دنبال فایلی که محصولات رو نمایش میده بگردید و در جایی که قیمت محصولات وارد شده، کد یا تابعی که قیمت محصول رو نمایش میده رو درون تابع زیر قرار بدید :

    <?php
    
    echo floor( $price );
    
    ?>

     

    راه دوم : گرد کردن قیمت‌ها، بعد از بارگذاری کامل قالب از طریق js

    در این راه باید ابتدا المنت‌هایی که قیمت رو نمایش میدن در یک متغیر بریزید :

    let priceElements = document.getElementsByClassName('price');

    در مرحله باید از طریق یک حلقه، محتوای تمام این المنت‌ها رو تغییر بدید :

    if ( priceElements ){
       
       for ( let i = 0 ; i < priceElements.length ; i++ ){
    
          priceElements[i].innerText = Math.floor(priceElements[i].innerText);
    
       }
    
    }

     

  7. در 4 ساعت قبل، armia.moradi گفته است :

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

    ذکر کنم که ایراد از کش مرورگر و یا خود سایت نمی باشد

    به چه صورت می شود این موضوع را اصلاح کرد ممنون می شم کسی چیزی می دونه راهنمایی کنه؟

    سلام، وقت بخیر

    بهتره آدرس سایت رو بفرستید تا بررسی بشه.

    با این حال ممکنه با قرار دادن این کد قبل از بسته شدن تگ head در فایل header.php قالبتون این مشکل حل بشه :

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

     

    • پسندیدن 2
  8. در ۱ ساعت قبل، am-in گفته است :

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

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

     

    غیر از مورد بالا, این 3 رو هم میشه اجرا کرد؟

     

    1. یک فیلد قیمت (عددی) هم دارم که میشه این پست تایپ های جدید رو بشکلی نمایش داد که مثلا اگر عدد اون فیلد کمتر بود بالاتر از بقیه نمایش داده بشه؟

    2. رنج قیمتی هر محصول نمایش داده بشه, مثلا: یک فیلد بوده 100 و دیگری 200 و یکی دیگه 300, داخل محصول نمایش بدم: قیمت از 100 تا 300 تومان, یعنی کمترین عدد و بیشترین عدد درج شده در فیلد.

    3. و یک دکمه هم بسازم مثلا با نام خرید از ارزان ترین فروشنده, حالا وقتی یک فروشنده اون فیلد عددی رو کمتر از بقیه وارد کرده بود, لینک خرید محصول که انتقال داده میشه به سایت شخصی فروشنده, در اون دکمه خرید از ارزان ترین فروشنده قرار بگیره.

     

    این موارد همه در سایت ترب هست.

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

    اگر منظورتون همین بوده باشه که تمام این موارد از طریق کدنویسی امکان پذیرن. 

  9. در 16 ساعت قبل، sepideh19 گفته است :

    با سلام

    من میخوام چند تا صفحه پرسش و پاسخ توی سایتم بسازم و در منوی سایتم امکان دسترسی به این صفحات رو بدم

     

    توی بخش  pages (برگه ها)  برای کامنت، از افزونه ی wpdiscuze  استفاده نمیکنه و پیشفرض است. آیا میتونم توی قسمت posts (نوشته ها) این صفحات رو بسازم؟؟

    سلام، وقت بخیر

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

    اما اگر می‌خواید یک بخش برای پرسش سوال توسط کاربر و پاسخ توسط شما (یا دیگر کاربران) بسازید، افزونه هایی برای اینکار وجود داره (مثل Sabai Discuss)، اما کدنویسی اختصاصی بهترین راه برای اینکاره.

    • پسندیدن 1
  10. در 59 دقیقه قبل، am-in گفته است :

    با عرض سلام

    دوستان عزیز یه سوال داشتم و ممنون میشم راهنمایی کنید

    من یک پست تایپ جدید ساختم با نام product و میتونم داخلش نوشته ایجاد کنم

    1. من با نوشته های اصلی وردپرس یک مطلب ایجاد میکنم.

    2. با پست تایپ جدید هم یک مطلب ایجاد میکنم.

    3. با افزونه زمینه دلخواه acf به این پست تایپ جدید یک فیلد اضافه کردم (آبجکت یک نوشته) که باهاش میتونم از بین مطالب وردپرس یک نوشته انتخاب کنم.

     

    حالا من میخوام با پست تایپ جدید که مثلا 10 عدد مطلب ایجاد کردم و همه رو گذاشتم مربوط به یک نوشته خاص, اون 10 عدد پست تایپ ایجاد شده رو در صفحه single.php زیر اون نوشته خاص نمایش بدم؟

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

     

    سلام، وقت بخیر

    منظورتونو درست متوجه نشدم.

    ولی اگر بخواید اون 10 پست رو به شکل ردیفی زیر محتوای مطلب نشون بدید باید این کد رو در بخشی که می‌خواید مطالب نشون داده بشن قرار بدید :

    <?php
    
    $args = array( 
       'numberposts' => 10, 
       'post_type'   => array( 'product' )
    );
    $products = get_posts( $args );
    
    if ( $products ) {
    
       foreach ( $products as $product ) {
    
          setup_postdata($product); 
    
          ?>
    
             <div>
                <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
             </div>
    
          <?php 
    
       }
    
    }
    
    wp_reset_postdata(); 
    
    ?>

    بعید میدونم منظورتون نمایش مطالب مرتبط بوده باشه اما با این حال کد اون رو هم قرار میدم :

    <?php
    
    $args = array( 
       'category__in' => wp_get_post_categories( $post->ID ),
       'numberposts'  => 5, 
       'post__not_in' => array( $post->ID ) 
    );
    $relatedPosts = get_posts( $args );
    
    if ( $relatedPosts ) {
    
       foreach ( $relatedPosts as $relatedPost ) {
    
          setup_postdata($relatedPost); 
    
          ?>
    
             <div>
                <a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a>
             </div>
    
          <?php 
    
       }
    
    }
    
    wp_reset_postdata(); 
    
    ?>

     

    • پسندیدن 1
  11. در 2 ساعت قبل، zoh sij گفته است :

    ممنون از راهنمایی تون

    با wp_is_mobile چطور میتونم این کار رو انجام بدم ؟ قسمت mobile footer چطور باید کد بلوک html رو وارد کنم ؟

    سلام، وقت بخیر

    پیشنهاد میکنم در کنار فایل footer.php قالبتون یک فایل بسازید با نام (footer-mobile.php) و کدهای html فوتر موبایل رو در اون وارد کنید، سپس در محل فراخوانی فوتر (جایی که کد get_footer() قرار گرفته) این کد رو قرار بدید :

    if( wp_is_mobile() ){
    	// Mobile Footer
    	get_footer( 'mobile' );
    } else{
    	get_footer();
    }

     

    • پسندیدن 3
  12. در 4 ساعت قبل، farzad_fb25 گفته است :

    با سلام

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

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

    سلام، وقت بخیر

    تا اونجایی که اطلاع دارم چنین افزونه‌ای وجود نداره.

    باید اختصاصی کدنویسی بشه.

    • پسندیدن 1
  13. در 59 دقیقه قبل، musaafer گفته است :

    لینک همونه نمیدونم چرا نمیاره

    https://parniantarh.ir/پس-زمینه-متحرک-شش-ضلعی-پراکنده-با-js-css-html/

     

    لینک زیر رو میخواین تست کنید.

    https://parniantarh.ir/?p=5322

     

     

    برای تنظیم چنین پس زمینه‌ای باید به اون بخشی که میخواید پس زمینه روی اون نمایش داده بشه، کلاس container و آی‌دی jsi-hex-container رو بدید.

    در مرحله بعد در فایل style.css قالب این کدهارو وارد کنید :

    html, body{
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      overflow: hidden;
    }
    .container{
      width: 100%;
      height: 100%;
      margin: 0;
      padding: 0;
      background-color: #000000;
    }

    و در مرحله آخر این کد رو انتهای فوتر قالب قرار بدید :

    <script>
    	var RENDERER = {
        RESIZE_INTERVAL : 30,
        RADIUS : 25,
        RATE : 0.98,
    
        init : function(){
        this.setParameters();
        this.setup();
        this.reconstructMethods();
        this.bindEvent();
        this.render();
        },
        setParameters : function(){
        this.$window = $(window);
        this.$container = $(‘#jsi-hex-container’);
        this.$canvas = $(‘<canvas />’);
        this.context = this.$canvas.appendTo(this.$container).get(0).getContext(‘2d’);
        this.hexagons = [];
        this.resizeIds = [];
        },
        setup : function(){
        this.hexagons.length = 0;
        this.resizeIds.length = 0;
        this.width = this.$container.width();
        this.height = this.$container.height();
        this.$canvas.attr({width : this.width, height : this.height});
        this.createHexagons();
        },
        getRandomValue : function(min, max){
        return min + (max  min) * Math.random() | 0;
        },
        createHexagons : function(){
        this.radius = this.RADIUS * this.RATE;
        this.vertices = [];
    
        for(var i = 0; i < 6; i++){
        this.vertices.push({x : this.radius * Math.sin(Math.PI / 3 * i), y : -this.radius * Math.cos(Math.PI / 3 * i)});
        }
        this.vertices.push(this.vertices[0]);
        this.hexWidth = this.RADIUS * Math.cos(Math.PI / 6) * 2;
        this.hexHeight = this.RADIUS * (2  Math.sin(Math.PI / 6));
    
        var countX = Math.ceil(this.width / this.hexWidth) + 1,
        countY = Math.ceil(this.height / this.hexHeight) + 1,
        offsetX = -(countX * this.hexWidth  this.width) / 2,
        offsetY = -(countY * this.hexHeight  this.height) / 2;
    
        countX++;
    
        for(var y = 0; y < countY; y++){
        for(var x = 0; x < countX; x++){
        this.hexagons.push(new HEXAGON(this, offsetX + (x + 0.5) * this.hexWidth  (y % 2 == 1 ? 0 : this.hexWidth / 2), offsetY + (y + 0.5) * this.hexHeight));
        }
        }
        for(var y = 0; y < countY; y++){
        for(var x = 0; x < countX; x++){
        var hexagon = this.hexagons[y * countX + x];
    
        if(x < countX  1){
        hexagon.neighbors[0] = this.hexagons[y * countX + x + 1];
        }
        if((x < countX  1 || y % 2 == 0) && y < countY  1){
        hexagon.neighbors[1] = this.hexagons[(y + 1) * countX + x + (y % 2 == 1 ? 1 : 0)];
        }
        if((x > 0 || y % 2 == 1) && y < countY  1){
        hexagon.neighbors[2] = this.hexagons[(y + 1) * countX + x + (y % 2 == 1 ? 0 : -1)];
        }
        if(x > 0){
        hexagon.neighbors[3] = this.hexagons[y * countX + x  1];
        }
        if((x > 0 || y % 2 == 1) && y > 0){
        hexagon.neighbors[4] = this.hexagons[(y  1) * countX + x + (y % 2 == 1 ? 0 : -1)];
        }
        if((x < countX  1 || y % 2 == 0) && y > 0){
        hexagon.neighbors[5] = this.hexagons[(y  1) * countX + x + (y % 2 == 1 ? 1 : 0)];
        }
        }
        }
        this.hexagons[this.getRandomValue(0, this.hexagons.length  1)].select();
        },
        watchWindowSize : function(){
        while(this.resizeIds.length > 0){
        clearTimeout(this.resizeIds.pop());
        }
        this.tmpWidth = this.$window.width();
        this.tmpHeight = this.$window.height();
        this.resizeIds.push(setTimeout(this.jdugeToStopResize, this.RESIZE_INTERVAL));
        },
        jdugeToStopResize : function(){
        var width = this.$window.width(),
        height = this.$window.height(),
        stopped = (width == this.tmpWidth && height == this.tmpHeight);
    
        this.tmpWidth = width;
        this.tmpHeight = height;
    
        if(stopped){
        this.setup();
        }
        },
        reconstructMethods : function(){
        this.selectHexagon = this.selectHexagon.bind(this);
        this.watchWindowSize = this.watchWindowSize.bind(this);
        this.jdugeToStopResize = this.jdugeToStopResize.bind(this);
        this.render = this.render.bind(this);
        },
        selectHexagon : function(event){
        var axis = this.getAxis(event);
    
        for(var i = 0, count = this.hexagons.length; i < count; i++){
        this.hexagons[i].judge(axis.x, axis.y);
        }
        },
        getAxis : function(event){
        var offset = this.$container.offset();
        return {x : event.clientX  offset.left + this.$window.scrollLeft(), y : event.clientY  offset.top + this.$window.scrollTop()};
        },
        bindEvent : function(){
        this.$window.on(‘resize’, this.watchWindowSize);
        this.$container.on(‘click’, this.selectHexagon);
        },
        render : function(){
        requestAnimationFrame(this.render);
    
        this.context.fillStyle = hsla(210, 70%, 10%, 0.3)’;
        this.context.fillRect(0, 0, this.width, this.height);
    
        for(var i = 0, count = this.hexagons.length; i < count; i++){
        this.hexagons[i].render(this.context);
        }
        }
        };
        var HEXAGON = function(renderer, x, y){
        this.renderer = renderer;
        this.x = x;
        this.y = y;
        this.init();
        };
        HEXAGON.prototype = {
        COUNT : {MIN : 5, MAX : 50},
        LUMINANCE : {MIN : 10, MAX : 70},
    
        init : function(){
        this.selections = [];
        this.neighbors = new Array(6);
        this.sourceIndices = [];
        },
        judge : function(x, y){
        if(x < this.x  this.renderer.hexWidth / 2 || x > this.x + this.renderer.hexWidth / 2
        || y < this.y  this.renderer.RADIUS || y > this.y + this.renderer.RADIUS
        || y < this.y && Math.abs((x  this.x) / (y  this.y + this.renderer.RADIUS)) > Math.tan(Math.PI / 3)
        || y > this.y && Math.abs((x  this.x) / (y  this.y  this.renderer.RADIUS)) > Math.tan(Math.PI / 3)){
        return;
        }
        this.select();
        },
        select : function(){
        this.hue = this.renderer.getRandomValue(100, 300);
        this.selections.push({count : 0, hue : this.hue});
        },
        relate : function(sourceIndices){
        this.sourceIndices.push(sourceIndices);
        },
        draw : function(context, targets){
        for(var i = 0; i < targets.length; i++){
        var target = targets[i],
        fillLuminance = 0,
        strokeLuminance = 0;
    
        if(target.count < this.COUNT.MIN){
        fillLuminance = this.LUMINANCE.MIN + (this.LUMINANCE.MAX  this.LUMINANCE.MIN) * Math.pow(Math.sin(Math.PI / 2 * target.count / this.COUNT.MIN), 3);
        }else if(target.count < this.COUNT.MAX){
        fillLuminance = this.LUMINANCE.MIN + (this.LUMINANCE.MAX  this.LUMINANCE.MIN) * Math.pow(Math.sin(Math.PI / 2 * (1 + (target.count  this.COUNT.MIN) / (this.COUNT.MAX  this.COUNT.MIN))), 3);
        }
        if(target.count < this.COUNT.MIN * 2){
        strokeLuminance = this.LUMINANCE.MIN + (this.LUMINANCE.MAX  this.LUMINANCE.MIN) * 2 * Math.sin(Math.PI / 2 * target.count / this.COUNT.MIN / 2);
        }else if(target.count < this.COUNT.MAX * 2){
        strokeLuminance = this.LUMINANCE.MIN + (this.LUMINANCE.MAX  this.LUMINANCE.MIN) * 2 * Math.sin(Math.PI / 2 * (1 + (target.count  this.COUNT.MIN * 2) / (this.COUNT.MAX  this.COUNT.MIN) / 2));
        }
        context.fillStyle = hsla(‘ + target.hue + ‘, 70%,  + fillLuminance + ‘%, 0.3)’;
        context.fill();
        context.strokeStyle = hsla(‘ + target.hue + ‘, 70%,  + strokeLuminance + ‘%, 0.3)’;
        context.stroke();
        }
        },
        render : function(context){
        context.save();
        context.globalCompositeOperation = lighter’;
        context.translate(this.x, this.y);
        context.beginPath();
    
        for(var i = 0, vertices = this.renderer.vertices; i < 6; i++){
        context[i == 0 ? moveTo : lineTo’](vertices[i].x, vertices[i].y);
        }
        context.closePath();
        context.fillStyle = hsla(210, 70%,  + this.LUMINANCE.MIN + ‘%, 0.3)’;
        context.fill();
    
        this.draw(context, this.selections);
        this.draw(context, this.sourceIndices);
        context.restore();
    
        for(var i = this.selections.length  1; i >= 0; i–){
        var selection = this.selections[i];
    
        if(selection.count == this.COUNT.MIN){
        for(var j = 0; j < 6; j++){
        if(this.neighbors[j]){
        var indices = [];
    
        for(var k = 0; k < 3; k++){
        var index = j  1 + k;
        index += 6;
        index %= 6;
        indices.push(index);
        }
        this.neighbors[j].relate({indices : indices, hue : this.hue, count : 0});
        }
        }
        }
        if(++selection.count == this.COUNT.MAX * 2){
        this.selections.splice(i, 1);
        }
        }
        for(var i = this.sourceIndices.length  1; i >= 0; i–){
        var indices = this.sourceIndices[i],
        index = indices.indices[this.renderer.getRandomValue(0, 3)];
    
        if(this.neighbors[index] && indices.count == this.COUNT.MIN){
        this.neighbors[index].relate({indices : indices.indices, hue : indices.hue, count : 0});
        }
        if(++indices.count == this.COUNT.MAX * 2){
        this.sourceIndices.splice(i, 1);
        }
        }
        }
        };
        $(function(){
        RENDERER.init();
        });
    </script>

     

  14. در 3 ساعت قبل، مبین خدایی گفته است :

    سلام 

     یه سوال  این موارد که توی عکس گذاشتم جگونه برای نام سایتم انجام دهم7309c3887fd6b0d18d64f5b484984c6584c8ee33 311088

    مثلا همان ثبت نام رو باید از افزونه خاصی استفاده کنم؟ تازه کارم

    سلام، وقت بخیر

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

  15. در 3 ساعت قبل، musaafer گفته است :

    ممنون 

    درسته لینک رو عوض کردیم

    لینک جدید اینه

    http://mqeb.ir/lahntajvid/

    مشکل اینجاست که فقط css نیاز نداره

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

    کد جاوااسکریپت و اچ تی ام ال و سی اس اس با هم دیگه است

     

    خواهش میکنم

    منظورم از ناقص بودن لینک، لینک تصویری بود که فرستادید.

    لطفا لینک صحیح تصویر رو مجددا ارسال کنید.

  16. در 40 دقیقه قبل، musaafer گفته است :

    با سلام

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

    البته قالب سفارشی را فقط برای قسمت وسط صفحه میخواهیم و بقیه قسمت های سایت باید مثل قبل بمانند.

    http://mqeb.ir/tajvidteacher/

    میخواهیم برای قسمت نظر سنجی ایجاد شده پس زمینه ای که در لینک زیر آمده است را قرار دهیم

    https://parniantarh.ir/پس-زمینه-متحرک-شش-ضلعی-پراکنده-با-js-css-html/

     

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

    در ضمن فرم نظر سنجی با افزونه quform ساخته شده است.

    در ضمن لینک تصویری که فرستادید نادرسته و باز نمیشه.

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

  18. در 42 دقیقه قبل، musaafer گفته است :

    با سلام

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

    البته قالب سفارشی را فقط برای قسمت وسط صفحه میخواهیم و بقیه قسمت های سایت باید مثل قبل بمانند.

    http://mqeb.ir/tajvidteacher/

    میخواهیم برای قسمت نظر سنجی ایجاد شده پس زمینه ای که در لینک زیر آمده است را قرار دهیم

    https://parniantarh.ir/پس-زمینه-متحرک-شش-ضلعی-پراکنده-با-js-css-html/

     

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

    در ضمن فرم نظر سنجی با افزونه quform ساخته شده است.

    سلام، وقت بخیر

    در اون برگه (در صورت امکان) میتونید این css رو قرار بدید :

    #main {
    	background-image: url("آدرس تصویر مورد نظر"); 
    	background-size: cover;
      	background-position: center;
    }

     

    اگر هم امکان تنظیم استایل سفارشی برای برگه‌هارو ندارید این کد رو در بخش سفارشی سازی » CSS سفارشی قالبتون قرار بدید

    .page-id-22360 #main {
    	background-image: url("آدرس تصویر مورد نظر"); 
    	background-size: cover;
      	background-position: center;
    }

     

  19. در 19 ساعت قبل، cyber گفته است :

    سلام دوستان

    من افزونه گالری Foo Gallery رو نصب کردم، در حال نمایش موبایل تصویر به صورت پیوست شده است، با چه تغییری در کد سی ‌اس اس، می‌تونم عرض تصاویر رو به حالت تمام صفحه تغییر بدم؟

     

    IMG_4751.PNG

    سلام، وقت بخیر

    این کد css رو استفاده کنید :

    .fg-item.fg-type-image {
    	width: 100% !important;
    }

     

    • پسندیدن 2
  20. در 21 دقیقه قبل، musaafer گفته است :

    باسلام

    ما در  سایتمان یک فرم تحویل فایل قرار داده ایم.

    اما این فرم در بارگذاری فایلهای بیش از 15 مگابایت مشکل دارد.

    یعنی فایل بارگذاری میشه و 100 درصد میشه اما آپلود کامل نمیشه که تیک بخوره

    فرم با افزونه quforms ساخته شده و از ajax هم استفاده میکنه البته ربطی به افزونه نداره چون با wpforms و gravityform هم امتحان کردم همین مشکل رو داشت

    لینک صفحه: http://mqeb.ir/tahvil/

    سلام وقت بخیر

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

     

    این کد رو در در انتهای فایل htaccess سایتتون قرار بدید :

    php_value upload_max_filesize 200M
    php_value post_max_size 200M
    php_value max_execution_time 300
    php_value max_input_time 300

     

    اگر حل نشد این کد رو انتهای فایل functions.php قالبتون قرار بدید :

    @ini_set( 'upload_max_size' , '200M' );
    @ini_set( 'post_max_size', '200M');
    @ini_set( 'max_execution_time', '300' );

     

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

  21. در 4 ساعت قبل، فال گفته است :

    با درود

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

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

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

    اگر نیست میشه برای گراویتی برنامه نویسی کردش؟ (برای کارایی بهتر و اعمال نظر شخصی بطور کلی مستقلا میشه چنین افزونه ای ساخت برای وردپرس؟)

    ممنونم

    سلام، وقت بخیر

    راستش افزونه‌ای نمیشناسم برای اینکار.

    اما انجام این کار از طریق کدنویسی php کار سختی نیست.

    اول یک فایل php با نام (برای مثال) information-processing.php بسازید.

    بعد در صفحه‌ای که میخواید فرم نمایش داده بشه یک فرم (ترجیحا به شکل اختصاصی و با HTML) بسازید و Action اون فرم رو به فایل php که ساختید بدید؛ تقریبا با این شکل :

    <form action='<?php echo get_template_directory_uri(); ?>/information-processing.php' method='POST'>
    	
      	<input type='text' name='firstname'>
      
      	<input type='text' name='lastname'>
      
      	<input type='number' name='age'>
      
    </form>

    در اون فایل php هم باید از طریق توابع php اقدام به ساخت متن مورد نظر خودتون کنید :

    <?php
    
    require_once("../../../wp-load.php");
    
    if ( ! isset($_POST['firstname'] || ! is_user_logged_in() ) {
     	header("Location: " . home_url()); 
    }
        
    $firstName = $_POST['firstname'];
    $lastName = $_POST['lastname'];
    $age = $_POST['age'];
        
    $text = "
    با سلام
    این یک متن سفارشیست...
    نام شما [fn] و نام خانوادگی شما [ln] میباشد.
    سن شما نیز [age] سال میباشد.
    ";
        
    $text = str_replace("[fn]", $firstName, $text);
    $text = str_replace("[ln]", $lastName, $text);
    $text = str_replace("[age]", $age, $text);
        
    ?>

    در کد بالا، سه مقدار نام، نام خانوادگی و سن رو از کاربر گرفتیم و اونهارو در متن سفارشی خودمون جایگزین متغیرهای [fn] - [ln] - [age] کردیم.

    اگر اطلاعات کافی در زمینه برنامه نویسی وب داشته باشید همین کدها کارتونو راه میندازن، در غیر اینصورت بهتره از سایت‌های مطرح در این زمینه مثل w3schools کمک بگیرید یا کارتونو به یک برنامه نویس متخصص واگذار کنید.

    • پسندیدن 1
    • تشکر 1
  22. در 18 ساعت قبل، Hasna گفته است :

    سلام میخوام این کد رو ایجوری کنم ولی هرکاری میکنم نمیشه باید چیکارش کنم

    
    <?php if (first_name): ?>
    نام کاربری شما
    <?php else: ?>
    نام شما وارد نشده
    <?php endif ?>

     

    <?php if (first_name): ?> میخوام با این باشه ولی نمیشه باید چیکار کنم

    سلام، وقت بخیر

    این کد احتمالا کمکتون کنه :

    <?php
    
    // کاربر
    $user = wp_get_current_user(); 
    
    // نام کاربری
    $username = $user->user_login;
    
    // نام
    $user_firstname = $user->user_firstname;
    
    // نام خانوادگی
    $user_lastname = $user->user_lastname;
    
    // نام نمایشی
    $user_display_name = $user->display_name;
    
    if ( $user_firstname && $user_lastname ){
    	// نمایش نام کامل
    	echo $user_firstname . ' ' . $user_lastname;
    } elseif ( $user_display_name ){
    	// نمایش نام نمایشی
    	echo $user_display_name; 
    } else {
    	// نمایش نام کاربری
    	echo $username;
    }
    
    ?>

     

    • پسندیدن 1
×
×
  • اضافه کردن...