a:6:{i:0;s:10100:"					<section class="headBg theme2 ">
					<div class="wrap">
					<div class="page-title-inner fo"> 
					<div class="h1"><h1>Job openings for php wordpress developer in thiruvananthapuram</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.inducthrsolutions.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.inducthrsolutions.in/current-jobs.htm" title="Current Jobs">Current Jobs</a>
																
					<b class="ffv p2px">&rsaquo;</b> Job openings for php wordpress developer in thiruvananthapuram</p>
					</div>
					</div>
					</section>
									<section id="middle">
				<div class="wrap" id="bodyFormatNT">
				<div class="row1 dt columns23"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls detail_pm_15"><!--MIDDLE ROW1 COL-2 STARTS-->
				
								<div class="pt10px">
				<div class="dt w100">
				<div class="dtc">
				<div class="xxxlarge fw6 dif">Php Wordpress Developer</div>
									<p class="mt7px fw6">Thiruvananthapuram</p>
								
				</div>
				<div class="dtc w125px"><div class="mt7px">
									
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="810097">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="990600"><input type="hidden" name="subject" value="Applied for Php Wordpress Developer">
					</form>
			
									</div></div>
				</div>
								<br />
				<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-53d0b0627cb3c661"></script>
				<div class="fo">
				<div class="addthis_sharing_toolbox dib vam mr10px"></div>
				<a href="http://www.inducthrsolutions.in/vacancy_990600.rss" target="_blank" class="p5px15px dib c3px" style="background:#f8991b;color:#ffffff;"><i class="fa fa-feed"></i> RSS Feed </a>
				</div>
				<br>
				<p class="aj mt7px">Brief description :<br />
<br />
We are looking to recruit experienced Frontend Developers who have good Knowledge and experience in Wordpress. The candidate must be eager to take up challenges and provide technical solutions for business problems.<br />
<br />
 <br />
<br />
Preferred skills<br />
<br />
Key Responsibilities <br />
<br />
Designing and implementing new features and functionality<br />
Establishing and guiding the websites architecture<br />
Ensuring high-performance and availability, and managing all technical aspects of the CMS<br />
Helping to formulate an effective, responsive design and turning it into a working theme and plugin<br />
<br />
 <br />
Minimum 2 year of hands-on experience in Web-Based Development.<br />
Expertise in WordPress customization, development and knowledge of plugins and API integration Should be well versed in WordPress.<br />
Must have the knowledge to create their own theme and able to do customization in the existing/premium theme.<br />
Must have experience of plugin customization and also aware of new plugin development.<br />
Must have the Knowledge of existing WordPress functions, hooks, plugins.<br />
WordPress integration directly from PSD/AI/Sketch would be considered as an added advantage.<br />
Must have knowledge of basic PHP and MYSQL concepts.<br />
Good knowledge in GIT. <br />
Effective time management and coordination skills<br />
Excellent communication skills and being able to work independently or in a full team</p>
				
				<table class="w100 formTable bdr0 mt20px">	
				<tr>
				<td class="w195 alpha75 p5px">Experience</td>
				<td class="p5px">2 - 5 Years</td>
				</tr>			
											<tr>
							<td class="alpha75 p5px">Salary</td>
							<td class="p5px"> 2  Lac  50 Thousand  To  7  Lac  P.A.</td>
							</tr>				
											
					<tr>
					<td class="alpha75 p5px">Industry</td>
					<td class="p5px">IT Software - Application Programming / Maintenance</td>
					</tr>
									
									<tr>
					<td class="alpha75 p5px">Key Skills</td>
					<td class="p5px">
											<span class="bdr dib p2px10px mr5px mt2px">Wordpress</span>
												<span class="bdr dib p2px10px mr5px mt2px"> PHP</span>
												<span class="bdr dib p2px10px mr5px mt2px"> MYSQL</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Web Developer</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Git</span>
												<span class="bdr dib p2px10px mr5px mt2px"> Website designer</span>
												<span class="bdr dib p2px10px mr5px mt2px"></span>
											</td>
					</tr>
									
				</table>
				</div>
				<br>
				<div class="pt20px">
				<p class="large fw6">About Company</p>
				<div class="mt10px">
				
									<table class="w100 formTable bdr0 mt5px">
											<tr>
						<td class="w195 alpha75 p5px">Contact Person</td>
						<td class="p5px">Sruthi</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Address</td>
						<td class="p5px">MRA -64, Mukkolackal, Kulathoor</td>
						</tr>					
												<tr>
						<td class="w195 alpha75 p5px">Mobile </td>
						<td class="p5px">8089000630 </td>
						</tr>
												<tr>
						<td class="w195 alpha75 p5px">Email ID</td>
						<td class="p5px"><a href="mailto:career@accubits.com"> career@accubits.com </a></td>
						</tr>
										
					</table>
									
				<br />
				
									
					<div class="bdrT pt20px">
					<form name="frmvacdetail" method="post" action="enquiry-form-10009.htm">
					<input style="padding:7px 15px;" class="button b ffos" type="submit" value="APPLY NOW !" />
					<input type="hidden" name="catalog_mi" value="810097">
					<input type="hidden" name="enq_type" value="2"><input type="hidden" name="vacancy_id" value="990600"><input type="hidden" name="subject" value="Applied for Php Wordpress Developer">
					</form>
					</div>
			
									</div>
				</div>			
				
				<!--MIDDLE ROW1 COL-2 ENDS--> 
				</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Location</h2>
				</div>
				<div class="ic">
				<div class="mt10px">
									<span class="dib p5px10px c2px bdr mr7px mb7px "><a class="dif" href="jobs-in-thiruvananthapuram.htm" title="Jobs in Thiruvananthapuram">Thiruvananthapuram</a> <b class="alpha50 bn small">(51)</b></span>
									</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="large fw6 alpha75 p12px bdrB">
				<h2>Jobs by Functional Area</h2>
				</div>
				<div style="padding:10px 18px;" class="ic">
									<p class="mb5px "><span class="fr">(42)</span><a href="jobs-in-application-programming-fid.htm" title="IT Software - Application Programming / Maintenance Jobs">IT Software - Application Prog...</a></p>
										<p class="mb5px "><span class="fr">(4)</span><a href="jobs-in-ecommerce-internet-marketing-fid.htm" title="IT Software - Ecommerce / Internet Technologies Jobs">IT Software - Ecommerce / Inte...</a></p>
										<p class="mb5px "><span class="fr">(3)</span><a href="jobs-in-computers-it-fid.htm" title="IT Hardware / Technical Support / Telecom Engineering Jobs">IT Hardware / Technical Suppor...</a></p>
										<p class="mb5px "><span class="fr">(2)</span><a href="jobs-in-web-designing-programming-fid.htm" title="IT Software - Others Jobs">IT Software - Others</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-corporate-planning-fid.htm" title="Corporate Planning & Strategy / Management Consulting Jobs">Corporate Planning & Strategy ...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-hr-recruitment-administration-ir-training-development-operations-fid.htm" title="HR / Recruitment / Administration / IR / Training & Development / Operations Jobs">HR / Recruitment / Administrat...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-sales-marketing-business-development-telecaller-fid.htm" title="Sales & Marketing / Business Development/telecaller Jobs">Sales & Marketing / Business D...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-analytic-business-intelligence-fid.htm" title="Analytic and Business Intelligence Jobs">Analytic and Business Intellig...</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-client-server-fid.htm" title="IT Software - Client Server Jobs">IT Software - Client Server</a></p>
										<p class="mb5px "><span class="fr">(1)</span><a href="jobs-in-mobile-software-application-fid.htm" title="IT Software - Mobile Technologies Jobs">IT Software - Mobile Technolog...</a></p>
									
				</div>
				</div>
				</div>
				
				</div>
				<!--MIDDLE ROW1 COL-1 ENDS-->
				
				<!--MIDDLE ROW1 ENDS--> 
				</div>
				<br><br>
				</div>
				</section>
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
					<script>
	$.ajax({
	  url: "https://www.placementindia.com/job_posting_view.php",
	  type: "POST",
	  dataType: 'html',
	  data: {job_view_id: 'VGg1Ym91NE5IL3I3amdVVE04b09UZz09',data_type: 'RExzRmw1cmRsdlh6YkJlVUZBNnA4UT09'},
	  cache : false,
	  async: true
	  
	}).done(function(resp) {
	  //alert(resp)
	});
	</script>
	";i:1;s:84:"Job openings for php wordpress developer in thiruvananthapuram | INDUCT HR Solutions";i:2;s:250:"Php Wordpress Developer Jobs,Php Wordpress Developer Jobs in Thiruvananthapuram,Php Wordpress Developer Vacancy in Thiruvananthapuram,Php Wordpress Developer jobs in India,IT Software - Application Programming / Maintenance jobs in Thiruvananthapuram";i:3;s:360:"Apply for Php Wordpress Developer Jobs in Thiruvananthapuram India - Php Wordpress Developer Vacancy  in IT Software - Application Programming / Maintenance field with 2 to 5 years Work Experience, Key Skills are Wordpress, PHP, MYSQL, Web Developer, Git, Website designer,, IT Software - Application Programming / Maintenance jobs in Thiruvananthapuram  India";i:4;s:2561:"
		<script type="application/ld+json">
		{
		  "@context": "http://schema.org",
		  "@type": "JobPosting",
		  "title": "Php Wordpress Developer",
		  "identifier": {
	        "@type": "PropertyValue",
	        "name": "",
	        "value":  "990600"
	      },
		  "hiringOrganization": {
	      "@type" : "Organization",
	      "name" : "",
	      "description": "",
	      "telephone" : "8089000630",
	      "email" : "career@accubits.com"  
	       },
		  "url": "http://www.inducthrsolutions.in/job-openings-for-php-wordpress-developer-thiruvananthapuram-990600.htm",
          "datePosted": "2020-09-18",
          
		  "baseSalary": " 2  Lac  50 Thousand  To  7  Lac ",
		  "description": "Brief description :

We are looking to recruit experienced Frontend Developers who have good Knowledge and experience in Wordpress. The candidate must be eager to take up challenges and provide technical solutions for business problems.

 

Preferred skills

Key Responsibilities 

Designing and implementing new features and functionality
Establishing and guiding the websites architecture
Ensuring high-performance and availability, and managing all technical aspects of the CMS
Helping to formulate an effective, responsive design and turning it into a working theme and plugin

 
Minimum 2 year of hands-on experience in Web-Based Development.
Expertise in WordPress customization, development and knowledge of plugins and API integration Should be well versed in WordPress.
Must have the knowledge to create their own theme and able to do customization in the existing/premium theme.
Must have experience of plugin customization and also aware of new plugin development.
Must have the Knowledge of existing WordPress functions, hooks, plugins.
WordPress integration directly from PSD/AI/Sketch would be considered as an added advantage.
Must have knowledge of basic PHP and MYSQL concepts.
Good knowledge in GIT. 
Effective time management and coordination skills
Excellent communication skills and being able to work independently or in a full team",
		  "educationRequirements": "",
		  "experienceRequirements": "2 - 5 Years",
		  "industry": "IT Software - Application Programming / Maintenance",
		  "jobLocation": {
		    "@type": "Place",
		    "address": {
		      "@type": "PostalAddress",
		      "addressLocality": "Kerala",
		      "addressRegion": "Thiruvananthapuram"
		    }
		  },
		 "qualifications": "",
		     "skills": "Wordpress, PHP, MYSQL, Web Developer, Git, Website designer,"
		  }
		</script>
		";i:5;N;}